mysql 忘记root密码怎么办

时间:2021-08-28 15:43:54

MySQL的密码经常忘记,最主要还是root用户的,官网也提供了几种方式找回密码,我就使用了一种比较通用的,就是直接跳过授权表,首先执行以下命令:

mysqld --skip-grant-tables --user=mysql &
当然官方是不推荐使用这种方式的,因为这个不太安全,如果是自己玩的话采用这种方式无所谓,以上这个命令和你的用户是有关系的,我这里是采用yum安装,数据保存路径这些配置都是默认配置好的,都是挂在mysql这个用户下的,如果你的不是这个需要修改,当然,如果你当前登陆Linux的用户就是MySQL的拥有者就可以不指定--user参数。

服务启动完成之后,直接输入mysql登陆,不需要密码。登陆成功之后需要重新启用授权表,否则账号管理无法使用,也就是你要改密码的sql或者命令不能使用。所以执行以下命令启用授权:

FLUSH PRIVILEGES;

然后就可以执行以下命令修改密码:

ALTER USER 'root'@'localhost' IDENTIFIED BY 'newpwdtouse';

然后重启mysql服务,ok。

如果以上语句不能修改就使用以下语句:

UPDATE mysql.user SET authentication_string = PASSWORD('MyNewPass')
WHERE User = 'root' AND Host = 'localhost';
FLUSH PRIVILEGES;