在CentOS 6.4系统中完成MySQL安装后,若遇到root密码遗忘、初始密码无法登录的情况,可通过以下步骤安全重置root密码,整个过程不需要提前知道原密码,操作前建议确认当前有系统root权限。

操作步骤
1. 停止正在运行的MySQL服务
首先需要将当前运行的MySQL服务停止,避免后续操作出现冲突,执行以下命令:
# 停止MySQL服务 service mysqld stop # 确认服务已停止 service mysqld status
2. 跳过权限验证启动MySQL服务
使用mysqld_safe命令启动MySQL,同时添加--skip-grant-tables参数,跳过权限表的验证,这样登录时不需要密码:
# 后台启动MySQL并跳过权限验证 mysqld_safe --skip-grant-tables & # 等待启动完成后,直接登录MySQL mysql -u root
3. 修改root密码
登录成功后,切换到mysql系统数据库,执行密码修改语句,注意MySQL 5.6及之前版本修改密码的语法如下:
-- 切换到mysql数据库
USE mysql;
-- 修改root用户密码,将new_password替换为你要设置的新密码
UPDATE user SET Password=PASSWORD('new_password') WHERE User='root';
-- 刷新权限使修改生效
FLUSH PRIVILEGES;
-- 退出MySQL
EXIT;4. 重启MySQL服务并验证
先结束之前跳过权限启动的MySQL进程,再正常启动服务,使用新密码登录验证是否修改成功:
# 结束所有MySQL进程 killall mysqld # 正常启动MySQL服务 service mysqld start # 使用新密码登录验证 mysql -u root -p
注意事项
- 操作全程需要使用CentOS系统的root权限,普通用户无法执行服务停止、启动等操作
- 设置新密码时尽量包含大小写字母、数字和特殊字符,提升密码安全性
- 若修改后登录提示密码错误,可检查是否执行了
FLUSH PRIVILEGES语句,或者密码是否输入正确 - 操作完成后建议删除操作过程中的临时日志文件,避免敏感信息泄露
如果是在生产环境操作,建议先在测试环境演练,避免操作失误导致数据库服务不可用。
CentOS_6.4MySQLroot密码重置mysqld_safe修改时间:2026-06-07 00:27:50