Laravel不断将表迁移到错误的数据库中

时间:2018-08-19 19:52:39

标签: php laravel laravel-5

我有2个数据库,所以我在2个不同的迁移文件夹下工作。我选择路径,效果很好。

php artisan migrate --path="database/migrations/game"

我在config / database.php中的现有mysql连接旁边添加了一个新连接:

'mysql' => [ ....default connection ]

'mysql_game_base' => [
   'driver' => 'mysql',
   'host' => env('DB_HOST', '127.0.0.1'),....bla bla

然后我在迁移文件夹中按如下所示添加了此连接:

Schema::connection("mysql_game_base")->create('players', function (Blueprint $table) {
        $table->increments('id');
        $table->string("name");
        $table->timestamps();
    });

但是迁移过程会继续将所有表创建为默认连接。

我也尝试添加数据库参数,但仍然没有机会:

php artisan migrate --path="database/migrations/game" --database="mysql_game_base"

1 个答案:

答案 0 :(得分:1)

我找到了解决方案。在创建第二个连接变量时,我还应该在.env文件中定义一个新变量。

DB_DATABASE=my_db
DB_DATABASE_GAME=my_db_game

我不应该在数据库配置中使用它:

'database' => env('DB_DATABASE_GAME', 'my_db_game'),

混淆来自在两个不同的地方进行定义。