> 文章列表 > Windows:解决MySQL登录ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘ (using passwor=YES)问题

Windows:解决MySQL登录ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘ (using passwor=YES)问题

Windows:解决MySQL登录ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘ (using passwor=YES)问题

我在下载的MySQL是8.0.32版本,刚下的时候没什么问题第二天启动MySQL服务就出现了

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

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

这样的问题,到现在还是不理解为什么会出现这样的问题但是问题已经解决了,希望我的文章可以帮助和我一样刚入门的小白。

一、MySQL密码错误的解决方法

  1. 打开以管理员身份打开终端,输入指令net stop mysql停止MySQL服务,停止服务之后不要删后面还有用

Windows:解决MySQL登录ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘ (using passwor=YES)问题

Windows:解决MySQL登录ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘ (using passwor=YES)问题

  1. 找到你MySQL的安装路径并删除该文件夹下的data文件夹(如果有就删掉,没有就不用管)

Windows:解决MySQL登录ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘ (using passwor=YES)问题

3.到终端里面输入mysqld --initialize然后等一下(这段时间就是在创建data文件夹),再次输入net start mysql启动MySQL服务,这时便会重新产生一个临时的登录密码

Windows:解决MySQL登录ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘ (using passwor=YES)问题

Windows:解决MySQL登录ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘ (using passwor=YES)问题

4.然后使用全局搜索找到.err文件(这里我用的是everything,用它来找零碎的文件是真的好用),或者直接去安装目录的data文件夹里面找(里面只有.err这一个文件),用记事本打开查找password,结尾就是登录密码

Windows:解决MySQL登录ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘ (using passwor=YES)问题

Windows:解决MySQL登录ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘ (using passwor=YES)问题

Windows:解决MySQL登录ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘ (using passwor=YES)问题

原文参考链接:https://blog.csdn.net/liu_xin_xin/article/details/96473805

二、MySQL修改密码

1.以管理员身份打开终端,输入net stop mysql停止MySQL服务

Windows:解决MySQL登录ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘ (using passwor=YES)问题

2.再次输入mysqld --console --skip-grant-tables --shared-memory跳过密码验证登录,前面的终端那不要关再打开一个新的管理员终端输入mysql -u root -p这时直接回车就行了

Windows:解决MySQL登录ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘ (using passwor=YES)问题

Windows:解决MySQL登录ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘ (using passwor=YES)问题

  1. 输入两段命令使密码置空

use mysql

update user set authentication_string=''where user='root';

Windows:解决MySQL登录ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘ (using passwor=YES)问题

4.输入quit退出MySQL,这个别关后面有用

Windows:解决MySQL登录ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘ (using passwor=YES)问题

5.这时就可以关掉以mysqld --console --skip-grant-tables --shared-memory启动的管理员终端了

Windows:解决MySQL登录ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘ (using passwor=YES)问题

6.在管理员终端输入net start mysql启动MySQL服务

Windows:解决MySQL登录ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘ (using passwor=YES)问题

7.这时输入mysql -u root -p回车就能进去了,因为密码已经置空所以不需要密码

Windows:解决MySQL登录ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘ (using passwor=YES)问题

8.这时输入ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';,这样新密码就设置好了

Windows:解决MySQL登录ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘ (using passwor=YES)问题

原文参考链接:https://www.maoziwang.com.cn/zonghe/51475.html

三、MySQL服务名无效等问题

有些同学可能在启动和关闭MySQL服务时碰到MySQL服务名无效的问题,我把原文链接放下面供大家参考

原文链接:https://blog.csdn.net/qq_21518059/article/details/124696622