1、修改 /etc/my.cnf,在 [mysqld] 小节下添加一行:skip-grant-tables=1

这一行配置让 mysqld 启动时不对密码进行验证
2、重启 mysqld 服务:systemctl restart mysqld
3、使用 root 用户登录到 mysql -u root
4、切换到mysql数据库:
use mysql;
更新 user 表:将密码更改为 123456
update user set authentication_string = password('root'), password_expired = 'N', password_last_changed = now() where user = 'root';
在之前的版本中,密码字段的字段名是 password,5.7版本改为了 authentication_string
5、退出 mysql,编辑 /etc/my.cnf 文件,删除 skip-grant-tables=1 的内容
6、重启 mysqld 服务,再用新密码登录即可
mysql -u root -p
本文介绍了一种在忘记MySQL密码后重置的方法。首先通过修改配置文件跳过密码验证,然后登录MySQL并更新root用户的密码。

被折叠的 条评论
为什么被折叠?



