SQLSTATE [HY000] [1049]未知的数据库 - 数据库创建的,不正常
问题描述:
我有这个在我的.ENV文件SQLSTATE [HY000] [1049]未知的数据库 - 数据库创建的,不正常
APP_ENV=local
APP_DEBUG=true
APP_KEY=m6twKy7Lr6KKFvVa7QgXUe78xfn08MLn
DB_HOST=localhost
DB_DATABASE=laravel1
DB_USERNAME=root
DB_PASSWORD=somepass
CACHE_DRIVER=file
SESSION_DRIVER=file
QUEUE_DRIVER=sync
MAIL_DRIVER=smtp
MAIL_HOST=mailtrap.io
MAIL_PORT=2525
MAIL_USERNAME=null
MAIL_PASSWORD=null
MAIL_ENCRYPTION=null
这是我为database.php
'mysql' => [
'driver' => 'mysql',
'host' => env('DB_HOST', 'localhost'),
'database' => env('DB_DATABASE', 'forge'),
'username' => env('DB_USERNAME', 'forge'),
'password' => env('DB_PASSWORD', ''),
'charset' => 'utf8',
'collation' => 'utf8_unicode_ci',
'prefix' => '',
'strict' => false,
],
数据库被创建,我可以在浏览器中使用phpMyAdmin查看它。
但是,当我写php artisan migrate
我得到这个错误:
[PDOException] SQLSTATE [HY000] [1049]未知数据库 'laravel1'
我看到的 答案Laravel Migration - Says unknown database, but it is created,但这并没有帮助我。
答
尝试指定您正在使用的MySQL端口。可能会解决。我有类似的问题。请确保在您的系统中安装MySQL的相应端口(默认为3306)。
'mysql' => [
'driver' => 'mysql',
'host' => env('DB_HOST', 'localhost'),
'port' => env('DB_PORT', '3306'),
'database' => env('DB_DATABASE', 'databasename'),
'username' => env('DB_USERNAME', 'root'),
'password' => env('DB_PASSWORD', 'root'),
'charset' => 'utf8',
'collation' => 'utf8_unicode_ci',
'prefix' => '',
'strict' => false,
],
检查MySQL用户的权限'SHOW GRANTS'root'@'localhost';' – huuuk