迁移期间数据库未配置laravel

时间:2015-07-21 19:33:29

标签: php mysql database laravel laravel-5

这可能是重复的问题。但我以前的答案没有运气

我只是git clone一个laravel项目。现在我尝试php artisan migrate。它返回以下错误。

[InvalidArgumentException]   
Database [] not configured.

migrate [--bench[="..."]] [--database[="..."]] [--force] [--path[="..."]] [--package[="..."]] [--pretend] [--seed]

我的app/config/database.php是这样的:

    'mysql' => array(
        'driver'    => 'mysql',
        'host'      => 'localhost',
        'database'  => 'upgrade',
        'username'  => 'root',
        'password'  => 'root',
        'charset'   => 'utf8',
        'collation' => 'utf8_unicode_ci',
        'prefix'    => '',
    ),

我确实在upgrade中创建了mysql数据库。

谁能告诉我我做错了什么?

提前感谢。

4 个答案:

答案 0 :(得分:7)

我有同样的问题。我从GIT克隆了L5.1项目并执行了

composer install 
composer update 

并且还在.env中配置了DB详细信息(默认情况下.env不存在,因此我将.env.example的副本重命名为.env)。之后如果试图运行

 php artisan migrate

我得到了与提及的@ users4393829相同的异常。我尝试按照命令查找和设置数据库。

 php artisan tinker
 >>> Config::get('database.connections.mysql.database');
 >>>null
 >>>Config::set('database.connections.mysql.database','homesteaed');
 >>>Config::get('database.connections.mysql.database');
 >>>homesteaed

完成所有这些后,我发现没有database.php文件,所以我把它放在'config'文件夹中并运行它运行的迁移。请确保您的项目中有任何配置文件被git忽略。

答案 1 :(得分:1)

只需删除.env文件并将新内容替换为

答案 2 :(得分:0)

另一个可行的解决方案是缓存配置: php artisan config:cachehere

答案 3 :(得分:0)

我遇到了同样的问题,原来框架附带的.env默认将DB_HOST设置为localhost并设置了DB_PORT。

将主机更改为计算机的FQDN,它可以正常工作。我猜如果您要连接到localhost,则它需要一个套接字而不是端口。