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