首页  >  文章  >  数据库  >  如何修复 MySQL 错误 1045:用户 \'root\'@\'localhost\' 访问被拒绝(使用密码:YES)?

如何修复 MySQL 错误 1045:用户 \'root\'@\'localhost\' 访问被拒绝(使用密码:YES)?

DDD
DDD原创
2024-10-26 07:43:02676浏览

How to Fix MySQL Error 1045: Access Denied for User 'root'@'localhost' (using password: YES)?

MySQL 错误 1045:故障排除和解决方案

遇到错误 #1045,“用户 'root'@'localhost' 的访问被拒绝(使用密码:YES)”当尝试使用 PHPMyAdmin 访问 MySQL 时可能会令人沮丧。以下是故障排除和解决此问题的综合指南:

问题: 由于密码未知,无法使用 mysql 控制台登录 MySQL。 PHPMyAdmin 也会返回错误消息。

解决方案:

  1. 检索 MySQL Root 密码:

    • 打开命令提示符并运行以下命令:

      mysql -u root -p
  2. 重置 Root 密码:

    • 出现提示时输入现有密码。如果密码为空,请按 Enter 键。
    • 执行以下命令更新密码:

      UPDATE mysql.user SET Password=PASSWORD('MyNewPass') WHERE User='root';
    • 指定您想要的新密码来代替 'MyNewPass '.
  3. 更新 config.inc.php 文件:

    • 导航到 config.inc.php 文件你的 MySQL 配置目录。
    • 找到以下行并将旧密码替换为新密码:

      $cfg['Servers'][$i]['password'] = 'MyNewPass';
  4. 循环 MySQL 服务:

    • 停止 MySQL 服务:mysql_stop.bat (Windows) 或 service mysql stop (Unix/Linux)
    • 启动 MySQL 服务:mysql_start .bat (Windows) 或 service mysql start (Unix/Linux)

MySQL 5.7 及更高版本的其他注意事项:

如果如果您运行的是 MySQL 版本 5.7 或更高版本,请在 UPDATE 查询中使用authentication_string 而不是密码:

UPDATE mysql.user SET authentication_string=PASSWORD('MyNewPass') WHERE User='root';

通过执行以下步骤,您应该能够成功更新 MySQL root 密码并重新获得对这两个数据库的访问权限。 mysql 控制台和 PHPMyAdmin。

以上是如何修复 MySQL 错误 1045:用户 \'root\'@\'localhost\' 访问被拒绝(使用密码:YES)?的详细内容。更多信息请关注PHP中文网其他相关文章!

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