我使用的是Laravel 5,我的数据库连接出现问题:
这是我的database.php文件:
'mysql' => [
'driver' => 'mysql',
'host' => env('DB_HOST', 'localhost'),
'database' => env('DB_DATABASE', 'my_scene'),
'username' => env('DB_USERNAME', 'root'),
'password' => env('DB_PASSWORD', 'root'),
'charset' => 'utf8',
'collation' => 'utf8_unicode_ci',
'prefix' => '',
'strict' => false,
'engine' => null,
],
这是我的.env文件:
然而,当我运行" php artisan migrate"我收到了错误DB_HOST =本地主机
DB_DATABASE = my_scene
DB_USERNAME =根
DB_PASSWORD =空
[PDOException] SQLSTATE [HY000] [1049]未知数据库' my_scene'
我已经尝试过php artisan cache:clear和config:cache并重新加载我的xampp控制器,但它没有用。
任何想法?
答案 0 :(得分:3)
它不是连接错误。
[PDOException] SQLSTATE[HY000] [1049] Unknown database 'my_scene'
表示您已成功连接到MySQL服务器。但是没有匹配名称my_scene
您可以使用以下任何方法创建数据库。
您只需通过在终端中执行此MySQL语句来创建数据库
CREATE DATABASE my_scene;
阅读Creating Database via terminal
如果您有一个MySQL GUI,即PHPMyAdmin,您可以轻松创建数据库。
请参阅this article以阅读有关通过PHPMyAdmin创建数据库的更多信息
使用Laravel的artisan
实用程序
php artisan tinker
使用以下代码段创建数据库
DB::connection()->statement('CREATE DATABASE my_scene');
答案 1 :(得分:0)
在配置文件中,使DB_PASSWORD等于空字符串""并将DB_PASSWORD保留在.env文件之外。
或者,您可以删除null并将DB_PASSWORD保留为空:
DB_PASSWORD=
这将表示密码的空字符串。
答案 2 :(得分:0)
我遇到了同样的错误,并且能够解决它。
我在WampServer 3.2中使用Laravel 7
,并且已经安装了两个数据库MySQL
和Maria DB
因此,我使用PhpMyAdmin
用MySQL创建了数据库
并且在使用1049
php artisan migrate
错误
然后,我使用MariaDB
(使用PhpMyAdmin
)创建了数据库,迁移成功
因此Laravel
试图连接到MariaDB
数据库,但是没有数据库(具有正确的连接值)