octobercms 无法连接到数据库; .env 很好并且 php artisan tinker / echo env('DB_*') 输出正确的内容

octobercms can't connect to DB; .env is fine and php artisan tinker / echo env('DB_*') outputs correct content

我正在使用 OctoberCMS,并且使用 .env 文件中的数据库设置,我可以毫无问题地连接到数据库,并且我看到一个名为“mydatabase”的数据库。但是当我做 php artisan tinker 和做 DB::connection()->getPdo(); 时,我得到以下信息:

InvalidArgumentException with message 'Database (mydatabase) does not exist.'

当我执行 echo env('DB_HOST');echo env('DB_PORT'); 等(对于 DB_DATABASE、DB_USERNAME 和 DB_PASSWORD)时,一切看起来都很好。我可以使用 mysql CLI 命令连接这些参数。然而 DB::connection()->getPdo(); 失败了。

有什么想法吗?

我是 运行OctoberCMS 1.0.443。 tail -f /path/to/myproject/storage/logs/system.log 没有 return 任何东西(尽管是可写的)

您确定您正确使用了 .env 文件吗?如果您的 config/database.php 文件中没有对 env() 的调用,则不会使用它。默认情况下,October 不使用 .env 文件,您要么必须自己将这些调用添加到配置文件中,要么必须 运行 php artisan october:env 自动为您完成.

原来我没有在我的 .env 中设置 DB_DATABASE。我有所有其他 DB_* 值但没有那个...