用户'root'@'localhost'的访问被拒绝)
Posted
技术标签:
【中文标题】用户\'root\'@\'localhost\'的访问被拒绝)【英文标题】:Access denied for user 'root'@'localhost')用户'root'@'localhost'的访问被拒绝) 【发布时间】:2021-11-03 09:51:17 【问题描述】:我是 php Laravel 的新手。当我在终端 php artisan serve
中运行时,它显示了一个错误。
我也无法访问 phpMyAdmin:
据我所知,我无法访问数据库,即使我运行 php artisan migrate
时也会显示相同的错误。
【问题讨论】:
确保.env
文件中的数据库连接凭据正确,user/password
组合存在并且可以访问您的数据库并且您的数据库服务正在运行。
检查您的用户授权
@basha04 如果他使用root
用户,权限不会有问题:-D
确保你有 DB_USERNAME="root" 和 DB_PASSWORD="" 之后运行 "php artisan config:cache" 并重试
您如何为您的数据库提供服务?您使用的是 docker、valet、homestead 还是 xaamp 或 waamp 之类的其他东西? mysql 需要运行。
【参考方案1】:
你应该通过这些命令在cmd中重置密码
打开 bash shell 并以 root 用户身份连接到服务器:
mysql -u root -h 本地主机 -p
运行 ALERT mysql 命令:
ALTER USER 'userName'@'localhost' IDENTIFIED BY 'New-Password-Here';
最后键入 SQL 命令重新加载 mysql 数据库中的授权表:
冲洗特权;
更多here
【讨论】:
Ehsan Ahmadi Kian,只要输入命令mysql -u root -h localhost-p
,它就会要求输入我不记得的密码。
你需要获取你的root密码。对于mysql。以下是获取或重置它的选项kinsta.com/knowledgebase/xampp-mysql-password 它告诉您访问被拒绝。因此,您使用的凭据是错误的。尝试重置您的 root 密码并在 .env 中输入正确的凭据(确保在更改这些值后清除配置缓存),每次更改它们时都需要重新运行 artisan serve。【参考方案2】:
您似乎在 .env 文件中为数据库访问设置了空密码。在 .env 文件中正确设置数据库凭据,然后重试。
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE= // your database name
DB_USERNAME= //root or your database user
DB_PASSWORD= // database password
【讨论】:
以上是关于用户'root'@'localhost'的访问被拒绝)的主要内容,如果未能解决你的问题,请参考以下文章
错误 1698 (28000): 拒绝用户 'root'@'localhost' 的访问
用户'root'@'localhost'的MYSQL访问被拒绝
用户'root'@'localhost'的访问被拒绝(使用密码:YES)