Mysql 5.7.18忘记密码

5.7.18密码修改发生了变化,旧版的方法不再奏效。
1. ps -ef | grep mysqld,kill掉启动的mysql服务;
2. 创建/etc/my.cnf,添加:
[mysqld]
skip-grant-tables
3. 重启服务,mysql -u root进行启动;进入到sql命令行之后:
update mysql.user set authentication_string=PASSWORD('XXX') where User='root';
FLUSH PRIVILEGES;
quit
4. 进入客户端测试:
 sudo ./mysql -uroot -pXXX 
5. 但是并没完,当你尝试use XX来进行切换数据库,以及通过外部client连链接的时候都会告知你的密码过期,或者要求你修改密码;
6. 登录mysql;
 set password=password('root'); 
问题圆满搞定
原文地址:https://www.cnblogs.com/xiashiwendao/p/7510033.html