首页 >数据库 >mysql教程 >为什么我在以 root 身份连接到 MySQL 时收到'访问被拒绝”错误?

为什么我在以 root 身份连接到 MySQL 时收到'访问被拒绝”错误?

Patricia Arquette
Patricia Arquette原创
2024-10-29 19:30:30434浏览

Why Am I Getting an

错误:#1045 - 用户 'root'@'localhost' 访问被拒绝(使用密码:YES)

问题

用户遇到尝试使用 root 用户和密码(通常通过 MySQL 控制台或 phpMyAdmin)连接到 MySQL 时出现访问拒绝错误。配置文件 config.inc.php 配置了正确的凭据,但登录仍然失败。

解决方案

要解决此问题,请按照以下步骤操作:

  1. 更改Root密码:
    使用命令提示符运行mysql -u root -p以root用户连接MySQL。如果提示输入密码,请输入您现有的密码,如果 config.inc.php 中的 AllowNoPassword 选项设置为 true,则将其留空。
  2. 更新密码:
    连接后,执行以下命令更新 root 密码:
    UPDATE mysql.user SETauthentication_string=PASSWORD('MyNewPass') WHERE User='root';
    将 'MyNewPass' 替换为您的新密码。
  3. 编辑 config.inc.php:
    使用新密码更新 config.inc.php 的服务器部分中的密码字段:
    $cfg['Servers'][$i] ['password'] = 'MyNewPass';
  4. 重新启动 MySQL 服务:
    停止然后重新启动 MySQL 服务。
  5. 验证连接:
    尝试使用更新后的密码再次登录MySQL。

附加说明

  • 如果使用MySQL 5.7版本或更高版本,应使用authentication_string而不是 SQL 更新命令中的密码。
  • 如果问题仍然存在,请验证 MySQL 服务是否正确运行,并且没有防火墙或防病毒限制阻止连接。
  • 考虑创建单独的使用 phpMyAdmin 的权限有限的用户,而不是使用 root 用户。

以上是为什么我在以 root 身份连接到 MySQL 时收到'访问被拒绝”错误?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn