问题描述
自己机器上的mysql很久不用就会出现忘密码的情况。改密码这种事情就是搞过了忘,忘了还会出现这种情况。还是记一下吧
摘自Mysql官方文档:https://dev.mysql.com/doc/mysql-windows-excerpt/5.7/en/resetting-permissions-windows.html
解决过程(windows情况,linux类似)
- 在随便一个目录创建一个记事本
txt文件,里面的内容是
# 应该是8.0以上用这个
ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass';
# 5.7版本用这个
# 如果因为让外部访问本机的mysql而把host改为%,那么这里要注意把host改成%
UPDATE mysql.user
SET authentication_string = PASSWORD('MyNewPass'), password_expired = 'N'
WHERE User = 'root' AND Host = 'localhost';
FLUSH PRIVILEGES;
- 关闭mysql服务
- 打开控制台,进入mysql的安装目录下的bin目录
- 执行
mysqld --init-file=C:\\mysql-init.txt,这里假设刚才新建的文件路径是C:\\mysql-init.txt,然后把正在运行的mysql服务关掉(也可能再打开一个控制台连接一下) - 开启mysql服务,正常连接,又可以愉快地玩耍了
浙公网安备 33010602011771号