MySQL忘记密码怎么办-MySQL修改密码(亲测可用)

前言:

最近要用到本地的MySQL,结果把密码忘记了。

ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)

 

然后参照网上的教程一顿操作,结果我自己都不知道是啥错了:

ERROR 1130 (HY000): Host 'localhost' is not allowed to connect to this MySQL server

 

 

 想着重新安装MySQL比较麻烦,就自己看看能不能死马当作活马医一下。

一、修改MySQL配置文件

想要在没有密码的状态下修改MySQL的密码,必须跳过MySQL登录时的登录密码权限的验证,取消掉这个验证的方式如下:

1、找到MySQL的安装文件中的my.ini文件

 

 

 

 一般人应该能找到的吧,配置MySQL的环境变量中也有安装目录的,一般默认安装目录在C盘中。

2、修改my.ini

记事本方式打开my.ini,找到[mysqld]这一行,在下面加入下面两条语句:

skip-name-resolve
skip-grant-tables

 注意[mysqld]是mysql+d(是小写的L,不是大写的i),最好直接复制,不然很容易输错。

 

 

 

 记得ctrl+s保存好

 

二、重启MySQL服务

1、以管理员身份运行命令行

 

 

 2、在命令行中输入停止MySQL服务命令:

net stop mysql

 

 

 3、在命令行中输入开始MySQL服务命令

net start mysql

 

三、登录MySQL

在重启MySQL服务后,通过命令登录MySQL(不需要密码)

mysql -uroot -p

 

回车后不用输入密码,直接回车就行。

 

 

 

四、修改密码

进入到MySQL中,在命令行中输入修改命令,修改密码为123456

grant all privileges on *.* to root@'localhost' identified by '123456';

 

 

 返回成功的话,密码就修改成功了

 

但有时候也会报一个错:

ERROR 1290 (HY000): The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement

 

 

解决办法:

刷新权限。输入一下命令后回车一下,(可以多尝试几次)

 flush privileges;

 

然后再重复第四步骤,修改密码,

 

 

五、还原MySQL配置文件

1、第一步我们修改了MySQL的配置文件my.ini,在修改成功后我们需要将配置文件还原。

 

 记得保存!!!

2、重启MySQL服务

net stop mysql
net start mysql

 

 

 

3、使用新密码,登录成功

 

posted @ 2021-07-12 13:23  砰砰的猿  阅读(9588)  评论(0编辑  收藏  举报