编码和Laravel的新手。我正在追踪tutorial video,并在22:31:00被告知编辑.env文件,然后使用“ php artisan migration”连接到数据库。
我在Larevel数据库文件夹“ database.wamp”(我使用WAMP连接到mysql数据库)中手动创建了一个文件,并将.env信息设置为;
LOG_CHANNEL=stack
DB_CONNECTION=mysql
DB_DATABASE=database.wamp
DB_USERNAME=root
DB_PASSWORD=""
我的mysql数据库没有密码。
我已经查看了许多有关上述问题的在线答案,但没有用。
我收到以下错误;
C:\wamp64\www\sites\demo1>php artisan migrate
Illuminate \ Database \ QueryException:SQLSTATE [HY000] [1045]访问被拒绝
对于用户``@'localhost'(使用密码:否)(SQL:选择* from information_schema.tables其中table_schema = database.wamp和 table_name =迁移,而table_type ='BASE TABLE')
我想添加更多代码,但是stackoverflow格式永远无法工作。单击CTRL + K只会打开一个新的镶边选项卡。我什至不能在每行之前添加4个空格以容纳6行以上的代码,否则空格键会变成一个返回按钮,而文本只会向下移动。非常烦人。
答案 0 :(得分:1)
您的主机和端口在哪里?
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=database.wamp
DB_USERNAME=root
DB_PASSWORD=
然后使用命令php artisan config:cache
,然后使用php artisan migrate
答案 1 :(得分:1)
请进入config文件夹,然后打开database.php文件。 这里在mysql部分添加您的数据库名称,主机和密码,它可能不会从.env文件中获取值。
如果仍然无法正常运行,则说明您使用了错误的数据库密码。
答案 2 :(得分:1)
您可能在MariaDB
中使用了WAMP
,必须将端口更改为3307
DB_PORT=3307
答案 3 :(得分:1)
您必须 restart
您的Web服务器。
如果您的问题仍未解决,请运行以下命令:
php artisan cache:clear
php artisan config:cache
答案 4 :(得分:0)
我想添加其他信息并显示尝试过的内容,因为现在我收到了另一条错误消息。
如上所述,我正在观看一个教程视频,并被告知要创建“ database.wamp”文件名,然后在命令提示符下运行“ php artisan migration ”。
但是,我一直收到“用户'@'localhost'(使用密码:否)的访问被拒绝”
这是我的.env设置
LOG_CHANNEL=stack
DB_CONNECTION=mysql
DB_DATABASE=database.wamp
DB_USERNAME=root
DB_PASSWORD=""
以及在“ config>数据库”中找到的我的mysql设置
'mysql' => [
'driver' => 'mysql',
'url' => 'database.wamp',
'host' => 'localhost',
'port' => '3306',
'database' => 'mysql',
'username' => 'root',
'password' => "",
'unix_socket' => env('DB_SOCKET', ''),
'charset' => 'utf8mb4',
'collation' => 'utf8mb4_unicode_ci',
'prefix' => '',
'prefix_indexes' => true,
'strict' => true,
'engine' => null,
'options' => extension_loaded('pdo_mysql') ? array_filter([
PDO::MYSQL_ATTR_SSL_CA => env('MYSQL_ATTR_SSL_CA'),
]) : [],
我检查端口为3306,这是正确的MySQL端口(MariaDB为3307)
接下来,我在MySQL中创建了一个名为database.wamp的数据库,并在命令提示符下运行了“ php artisan migration”。这次我收到新的错误消息:
未知数据库'atabase_url'
我看到文本“数据库”缺少“ d”,但不确定在哪里找到?我检查了phpMyAdmin数据库,它的拼写正确。我还检查了Laravel中我能想到的所有地方,找不到拼写错误的单词?