Windows下Mysql5.7忘记root密码的解决方法

时间:2024-01-18 09:33:44

找到mysql5.7安装的目录,我这里是:C:\Program Files\MySQL\MySQL Server 5.7

先停止mysql服务

在服务里找到MySQL57服务,停掉它。

修改my.ini

用管理员权限启动cmd命令窗口,很重要!

进入bin目录,拷贝my-default.ini 成my.ini,把my.ini里的datadir的值改成你的mysql数据库目录的值,我这里是:datadir=C:/ProgramData/MySQL/MySQL Server 5.7/Data

然后在cmd窗口执行命令:

mysqld --skip-grant-tables

回车后窗口就堵塞了,不会继续往下走。

修改新密码

打开第二个cmd窗口执行

mysql -uroot -p 

提示输入密码,直接回车(不用输入密码)

选择数据库:use mysql;

更新root的密码:update user set authentication_string=password('新密码') where user='root' and Host='localhost';

刷新权限:flush privileges;
退出:quit
重新登录:mysql -uroot -p 提示输入密码,这时输入密码才能登录。完成!!!

重启MySQL57服务
重启服务后,使用navicat 就能重新使用新的密码连接。

感谢这位老兄: https://www.cnblogs.com/yuwentims/p/9172463.html