解决新数据库的laravel迁移问题

时间:2016-06-16 14:24:11

标签: laravel-5.2

我正在尝试为测试设置单独的数据库。由于某些原因,当我运行迁移时,我总是会写一条消息:“无需迁移。”

以下是我运行迁移的方法:

php artisan migrate --database=mysql_test
Nothing to migrate.

这是我的config / database.php:

'default'=> env('DB_CONNECTION','mysql'),

'connections'=> [

'sqlite' => [
    'driver' => 'sqlite',
    'database' => env('DB_DATABASE', database_path('database.sqlite')),
    'prefix' => '',
],

'mysql' => [
    'driver' => 'mysql',
    'host' => env('DB_HOST', 'localhost'),
    'port' => env('DB_PORT', '3306'),
    'database' => env('DB_DATABASE', 'mydb'),
    'username' => env('DB_USERNAME', 'root'),
    'password' => env('DB_PASSWORD', 'dev'),
    'charset' => 'utf8',
    'collation' => 'utf8_unicode_ci',
    'prefix' => '',
    'strict' => false,
    'engine' => null,
],

'mysql_test' => [
    'driver' => 'mysql',
    'host' => env('DB_HOST', 'localhost'),
    'port' => env('DB_PORT', '3306'),
    'database' => env('DB_DATABASE', 'mydbtest'),
    'username' => env('DB_USERNAME', 'root'),
    'password' => env('DB_PASSWORD', 'dev'),
    'charset' => 'utf8',
    'collation' => 'utf8_unicode_ci',
    'prefix' => '',
    'strict' => false,
    'engine' => null,
],

显然我可以使用配置中的凭据登录数据库mydbtest。

在进行一些故障排除后更新此处: 清空mydb数据库并运行相同的命令后,它填充了mydb数据库而不是mydbtest。这意味着它没有考虑我作为数据库连接名称给出的内容。

欢迎任何解决此问题的建议。

由于

1 个答案:

答案 0 :(得分:0)

我发现了问题。

在我的.env文件中注释掉这一行后,现在可以使用了:

#DB_DATABASE=mydb

由于