Mysql 5.7 liunx 忘记密码的补救方法

linux下mysql的root密码忘记解决方


1.修改MySQL的登录设置
# vim /etc/my.cnf
在[mysqld]的段中加上一句:

skip-grant-tables

例如:

[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
skip-grant-tables 

2.重启mysql

systemctl restart mysqld

 3.现在可以没密码登陆mysql

mysql -uroot          //直接登陆

 4.更新密码

*特别提醒注意的一点是,新版的mysql数据库下的user表中已经没有Password字段了,变成了authentication_string

mysql> update mysql.user set authentication_string=password('XXXXXXXX') where user='root';
mysql> flush privileges;
mysql> quit;

 5.再次修改mysql的登陆设置

将第一步中加上去skip-grant-tables的删掉

6.重启musql即可

systemctl restart mysqld
原文地址:https://www.cnblogs.com/shifu204/p/6489269.html