北屋教程网

专注编程知识分享,从入门到精通的编程学习平台

解决mysql8 Access denied for user root@localhost using password: Yes

好久不用的mysql(win10 mysql8.1),遇到ERROR 1045 (28000):Access denied for user ‘root‘@‘localhost‘ (using password: Yes)问题。

只有一种可能,密码错了(忘了)。因为报这样的错误,说明mysql服务肯定是正常启动的。

那么恢复密码吧,原本以为跟喝凉水一样,可是这次从网上查资料,试了N次都不行。以至于都想起以前的密码了。。。

在windows下默认安装Mysql8,mysql安装在D盘,而配置文件却默认在C盘,这是问题的关键。

网上有教程让在mysql安装目录新建一个my.ini,然后键入--skip-grant-tables,确实能进入mysql,但是修改密码行不通。

以上都是废话,上手直接看下面:

____________________________________________________

1、从服务中找到Mysq,右键查看属性,了解Mysql服务启动的路径和配置文件路径。右键“停止”,先暂停服务。

2、从配置文件路径新建一个1.txt(名称随便),输入

use mysql;

alter user root@'localhost' identified by '123456789';

千万注意:用记事本保存为ANSI格式。用UTF-8没效果,切记。

3、mysqld --defaults-file="C:\ProgramData\MySQL\MySQL Server 8.1\my.ini" --init-file="C:\ProgramData\MySQL\MySQL Server 8.1\1.txt"

我这里mysql bin目录已经在path中了,因此可以省略前面的路径,直接mysqld。

以管理员身份运行,运行后会一直光标闪烁,等待退出。如果命令运行后直接退出了是不对的,说明有问题。

4、从服务中启动mysql (也可以用net start命令)

5、启动powershell或cmd

mysql -uroot -p

输入新密码,成功。

——————————————————————————————————————————



AI建议配图,挺好的,就加上吧。

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言