在我的 Ubuntu VM 中,我不断收到
SQLSTATE[HY000] [1045] 用户“用户名”@“localhost”的访问被拒绝(使用密码:YES)
update
我在 .env 文件中像这样配置了我的数据库
DB_HOST=45.55.88.57
DB_DATABASE=b-prod
DB_USERNAME=root
DB_PASSWORD=*********
UNIX_SOCKET=/var/run/mysqld/mysqld.sock
它工作完美。
但是当我使用
DB_HOST=45.55.88.57
DB_DATABASE=b-prod
DB_USERNAME=b <----------------------------------------------
DB_PASSWORD=*********
UNIX_SOCKET=/var/run/mysqld/mysqld.sock
我没有工作。
我还应该研究什么来防止这种情况发生?
我有一种感觉,我的密码错误。
如何测试我的数据库密码? DB_PASSWORD=********* ?
这是我拥有的所有用户
mysql> SELECT User,Host FROM mysql.user;
+------------------+-------------+
| User | Host |
+------------------+-------------+
| root | % |
| root | 127.0.0.1 |
| root | 45.55.88.57 |
| root | ::1 |
| root | b |
| b | localhost |
| debian-sys-maint | localhost |
| root | localhost |
+------------------+-------------+
8 rows in set (0.00 sec)
解决方案:
有时,当您更改 .env 时,如果不清除缓存或重新启动服务器,配置不会刷新。
错误信息是:
SQLSTATE[HY000] [1045] Access denied for user 'forge'@'localhost' (using password: YES)
数据库正在尝试从“缓存”.env 配置中获取信息,您应该尝试:
php artisan config:clear
如果没有解决,请重新启动服务器。
[编辑]另一个不推荐 option:
- 去你的
config\database.php
- 删除 .env 配置
并设置您自己的凭据
'mysql' => [
'host' => '45.55.88.77',
'database' => 'prod',
'username' => 'forge',
'password' => '*********',
],
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)