参考:https://www.cnblogs.com/yaowen/p/9486997.html
https://blog.csdn.net/myhaini/article/details/83111000
1.重置密码的第一步就是跳过MySQL的密码认证过程,方法如下:
#vim /etc/my.cnf(注:windows下修改的是my.ini)
在文档内搜索mysqld定位到[mysqld]文本段:
/mysqld(在vim编辑状态下直接输入该命令可搜索文本内容)
在[mysqld]后面任意一行添加“skip-grant-tables”用来跳过密码验证的过程,如下图所示:
保存文档并退出:
#:wq
2.接下来我们需要重启MySQL:
使用如下命令操作mysql:
systemctl restart mysqld.service (重启)
systemctl start mysqld.service (启动)
systemctl stop mysqld.service(停止)
3.重启之后输入#mysql即可进入mysql。
4.接下来就是用sql来将旧密码置空
mysql -u root -p //提示输入密码时直接敲回车。
//选择数据库
use mysql
//将密码置空
update user set authentication_string = ‘’ where user = ‘root’;
//退出
quit;
5://去除免密码登陆
删掉步骤1的语句 skip-grant-tables
重启服务 service mysqld restart
6://修改密码
mysql -u root -p //提示输入密码时直接敲回车,刚刚已经将密码置空了
ALTER USER ‘root’@‘localhost’ IDENTIFIED BY ‘ABC123@xxx’;//‘ABC123@xxx’ 密码形式过于简单则会报错
5.编辑my.cnf,去掉刚才添加的内容,然后重启MySQL。大功告成!