我已经搜索了很多关于它并尝试了我能找到或想到的所有可能的解决方案。
所以我将数据库配置更改为新数据库,如下所示:
DB::disconnect('mysql');
config(['database.connections.mysql.database' => $new_db_name]);
如果我尝试获取数据库名称,如:
dd(config('database.connections.mysql.database'));
我得到了我刚设置的正确的数据库名称。但是当我尝试在其上运行迁移时:
\Artisan::call('migrate', ['--database' => $new_db_name ]);
我收到错误:数据库[$ new_db_name]未配置
感谢任何帮助。
答案 0 :(得分:4)
问题是--database
参数非常混乱。它不应该包含数据库名称而是数据库连接名称,因此在您的情况下:
\Artisan::call('migrate', ['--database' => 'mysql' ]);
应该这样做。