2017-09-03 15 views
0

私は現在Laravel 5.4を使用しています。私はクライアントごとに別々のデータベースを持っています。すべてのクライアントデータベースでデータベースの移行を実行したいと思います。データベース名は、clientdb_ {clientid}の形式です。私はLaravelデータベースの移行手順

Config::set("database.connections.mysql", ["database" => 
"clientdb_".$client['id'], 
"username" => "root","password" => ""]); 

$this->callSilent('migrate', 
[ '--path' => 'database/migrations/clients','--database'=>'clientdb_'.$client['id']]); 

使用して試してみましたが、私は

[InvalidArgumentException]データベース[clientdb_1]に設定されていないと呼ばれる例外を取得しています。

答えて

0

データベースはあなたのconfig/database.phpでファイルで構成されていないようにあなたが表示されたコードは、mysqlのをラベルされた接続を構成している

+0

私はenvとdatabase.phpにパーマネントDBを設定しました。しかし、これらはアクセスしたいランタイムDBです。どのようにそれを可能にする@Abhishek Vyas – ganesh

1

を検索します。私はあなたが本当にやろうとしているのは、clientdb_1という新しいデータベース接続を設定することです:

Config::set("database.connections.clientdb_" . $client['id'], [ 
    "database" => "clientdb_" . $client['id'], 
    "username" => "root", 
    "password" => "" 
]); 
+0

mysqlドライバで私はsyncclientと呼ばれるdbを設定しました。私はconfig :: set aremy clientdbの – ganesh

+0

@ganeshを使って動的にアクセスしたいと思います。申し訳ありませんが、わかりません。これは新しい質問ですか?私の答えはあなたが最初に尋ねた質問に役立ちますか? –

+0

これは同じ質問です。 scenario :: クライアントあたり1dbあります。 config/database.phpファイルで設定せずにクライアントのdbにアクセスしたいと思います。すべてのデータベースにアクセスしたいと思います。 – ganesh

関連する問題