MySQL忘记root密码

1.修改MySQL的登录设置:

# vi /etc/my.cnf 
在[mysqld]的段中加上一句: skip-grant-tables  保存并且退出vi。

2.重新启动mysqld

# /etc/init.d/mysqld restart 
 ( 或service mysqld restart )

3. mysql -uroot -p 回车

mysql> USE mysql ; 

4. 修改密码:

Mysql5.6:
mysql> update mysql.user set password=password('123456') where host='localhost' and user='root';
Mysql5.7及Mysql8:
mysql> update mysql.user set authentication_string=password('123456') where host='localhost' and user='root';

5.刷新权限 

mysql> flush privileges ; 
mysql> quit;

6.将MySQL的登录设置修改回来

# vi /etc/my.cnf 将刚才在[mysqld]的段中加上的 skip-grant-tables 删除 保存并且退出vi。

7.重新启动mysqld

# /etc/init.d/mysqld restart   
( 或service mysqld restart )
重新登录成功 ,root用户设置ok。

 

参考:

https://www.cnblogs.com/kevin-yang123/p/9923203.html

https://www.cnblogs.com/ivictor/p/9243259.html

上一篇:新版本 docker 非 root 用户 无法使用 docker 报权限错误的问题


下一篇:使用Python开发一个恐龙跑跑小游戏,玩起来