商城首页欢迎来到中国正版软件门户

您的位置: 首页 > 文章列表 > 系统应用 > CentOS怎么重置MySQL的root密码

CentOS怎么重置MySQL的root密码

  发布于2026-08-18 阅读(0)

扫一扫,手机访问

在CentOS系统上重置MySQL root密码,关键的三步是「跳过权限验证→登录修改→恢复安全」,但要注意严格匹配MySQL版本。5.7及以下版本需使用UPDATE mysql.user SET Password=PASSWORD('新密码') WHERE User='root';,而8.0及以上版本则得用ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';。此外,还需留意authentication_string字段与caching_sha2_password插件的兼容性问题。

CentOS怎么重置MySQL的root密码

直接说结论:CentOS 上重置 MySQL root 密码,核心是「跳过权限验证 → 登录修改 → 恢复安全」三步,但具体命令和 SQL 语句必须匹配你的 MySQL 版本,否则会报错或无效。

MySQL 5.7 和 8.0+ 的重置 SQL 完全不同

很多人卡在登录后执行 UPDATE user SET Password=...ALTER USER 报错,根本原因是版本不兼容:

  • MySQL 5.7 及更早:字段名是 Password,用 PASSWORD() 函数加密,语句形如:
    UPDATE mysql.user SET Password=PASSWORD('新密码') WHERE User='root'; FLUSH PRIVILEGES;
  • MySQL 8.0+:Password 字段已移除,改用 authentication_string,且必须指定 host(常见为 'localhost'),语句应为:
    ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码'; FLUSH PRIVILEGES;
  • 如果遇到 Client does not support authentication protocol 错误,说明客户端不支持默认的 caching_sha2_password 插件,需额外执行:
    ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密码';

跳过权限验证的两种可靠方式

不能只改 /etc/my.cnfskip-grant-tables 就完事——有些系统(尤其是 systemd 管理的服务)会忽略该配置,或因并发启动失败。稳妥做法分情况:

  • 方式一(推荐,适用于大多数 CentOS 7/8):
    停服务 → 修改 /etc/my.cnf,在 [mysqld] 下新增一行:
    skip-grant-tables
    再执行 systemctl start mysqld。注意:必须确保没有其他 mysqld 进程残留,否则启动失败。
  • 方式二(绕过配置文件,适合启动异常时):
    systemctl stop mysqld,然后手动以安全模式启动:
    mysqld --skip-grant-tables --skip-networking --user=mysql &
    其中 --skip-networking 能防止远程连接,提升临时安全性。

改完密码后必须立刻清理和验证

很多人重启服务后仍无法用新密码登录,问题往往出在收尾动作遗漏:

  • 改完密码退出前,务必执行 FLUSH PRIVILEGES; —— 否则修改只存在内存,未写入权限表。
  • 恢复配置时,不是删掉 skip-grant-tables 行,而是注释掉它:
    # skip-grant-tables,避免配置语法错误导致 mysqld 启动失败。
  • 重启服务后,不要只测试 mysql -u root -p,还要验证插件是否匹配:
    SELECT user, host, plugin FROM mysql.user WHERE user='root';
    plugincaching_sha2_password 但客户端老旧,就得换回 mysql_native_password

整个过程最易被忽略的是版本判断和插件兼容性——连 mysql --version 都没确认就动手,大概率白忙一场。操作前花 10 秒查清版本和认证插件,比反复重启省半小时。

本文转载于:https://www.php.cn/faq/2998823.html 如有侵犯,请联系zhengruancom@outlook.com删除。
免责声明:正软商城发布此文仅为传递信息,不代表正软商城认同其观点或证实其描述。

热门关注