【问题标题】:Access denied for user 'root'@'localhost')用户'root'@'localhost'的访问被拒绝)
【发布时间】:2023-03-20 23:00:01
【问题描述】:

我是 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 需要运行。

标签: php mysql laravel phpmyadmin


【解决方案1】:

你应该通过这些命令在cmd中重置密码

  1. 打开 bash shell 并以 root 用户身份连接到服务器:

    mysql -u root -h 本地主机 -p

  2. 运行 ALERT mysql 命令:

    ALTER USER 'userName'@'localhost' IDENTIFIED BY 'New-Password-Here';

  3. 最后键入 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

【讨论】:

    猜你喜欢
    • 2013-07-28
    • 2017-10-04
    • 2013-08-22
    • 2015-07-04
    • 2017-03-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多