关于mysql忘记密码的解决策略
关于mysql忘记密码的解决策略
-
关闭mysql服务
命令行输入
net stop mysql或者打开计算机管理(此电脑->管理 可进入)找到自己的mysql

直接点击停止
-
绕过密码登录
打开命令行(win+R ->cmd)(管理员/非管理员状态下皆可)输入
mysqld --initializemysqld --console --skip-grant-tables --shared-memory此时运行持续不终止,保持此窗口不关闭,另开一个命令行窗口(以管理员身份打开),输入
mysql -u root -p此时会提示输入密码,这个密码填什么都行,进入mysql,输入
use mysqlselect user,authentication_string,host from User;上面一行是查看操作,可以没有
alter user 'root'@'localhost' identified by '123456';上面一行是更改密码操作,root为用户名对应user,localhost对应host,后方是自己更改的密码
flush privileges;设置生效
quit;退出
关闭这两个命令行窗口后重新启动mysql,输入更改后密码,成功
-
其他问题
其他解决办法:重装
其他问题:为什么修改后查看命令
select user,authentication_string,host from User;更改用户名的密码是乱码?
原因:自己设置的密码在查看时有加密过程
可以通过
select user,plugin from user where user='root';查看密码的加密方式
所以这就是为什么有些教程使用
update user set authentication_string='123456' where User='root';不成功的原因,因为没有加密过程,实际密码非设定密码

浙公网安备 33010602011771号