windows/liunx版本:mysql-8.0.27
参考官网文档: https://dev.mysql.com/doc/refman/8.0/en/resetting-permissions.html
一.windows下mysql密码重置
1.停止mysql服务(启动状态下)
net stop MySql
2.新建一个文件夹D盘下mysql-init.txt,放入如下语句(包含新密码:MyNewPass):
ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass';
3.执行初始化密码语句(mysql的bin目录下执行):
mysqld --init-file=D:\\mysql-init.txt
注:执行过程中卡住可以ctrl+c取消掉
4.开启服务,重新登录密码已经被修改:
二.liunx下mysql密码重置:
1.停止mysql服务(启动状态下):
service mysqld stop #停止mysql服务
2.编写mysql配置文件
vim /etc/my.cnf #编写mysql配置文件,添加skip-grant-tables跳过验证
3.启动mysql服务:
service mysqld start #启动mysql服务
4.再次登录,跳过校验
mysql -u root #跳过验证
5.mysql
客户端,告诉服务器重新加载授权表,以便帐户管理语句工作
mysql> FLUSH PRIVILEGES;
6.更改'root'@'localhost'
帐户密码。将密码替换为您要使用的密码
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'Mrwhite@2021';
7.退出,恢复mysql配置文件,注释skip-grant-tables
mysql> exit
Bye
[root@localhost ~]# vim /etc/my.cnf
8.重启mysql服务.此时使用修改后的密码成功登录
vim /etc/my.cnf
service mysqld restart