在MySQL登录时出现Access denied for user ‘root‘@‘localhost‘ (using password: YES) 拒绝访问,并可修改MySQL密码

MYSQL解决密码键入错误
适用于windows安装MySQL
对于出现拒绝访问root用户的解决方案
错误1045(28000):用户’root’@‘localhost’(使用密码:YES)拒绝访问

在这里插入图片描述

首先解析此英文:ERROR 1045 (28000): Access denied for user ‘root’@‘localhost’ (using password: YES);解析的地方有两处:①Access denied(拒绝访问);②using password:NO/YES

在这里插入图片描述

一、出现access denied的原因有如下可能:

1)mysql的服务器停止

2)用户的端口号或者IP导致

3)mysql的配置文件错误----my.ini等文件

4)root用户的密码错误

若MySQL已经没有启动,重启MySQL服务器:net start mysql

若用户的端口号与IP(3306/3307)不一致,打开my.ini文件进行编辑。全部将端口编辑替换为: port=X(如:port=3306)
my.ini文件误输入无效内容,不知道到何处。复制替换该文件;有人已经对my.ini文件进行解释以及注释(非博主的文章)https://blog.csdn.net/lienfeng6/article/details/78140404
root用户密码错误,本博文章主要内容【解决方案】
出现 using password的原因如下是:

不键入密码:
在这里插入图片描述

错误的密码:
在这里插入图片描述

解决方案:
到安装的MySQL的目录下,找my.ini文件;

在[mysqld]后添加skip-grant-tables(使用 set password for设置密码无效,且此后登录无需键入密码)

skip-grant-tables #在my.ini,[mysqld]下添加一行,使其登录时跳过权限检查

在这里插入图片描述

尽量少操作(接着如下操作)
重启MySQL服务器。
在这里插入图片描述

登录mysql,键入mysql –uroot –p;直接回车(Enter)
在这里插入图片描述

键入无效set password for ‘root’@‘localhost’=password(‘123456’);(注意这里有一个分号;一定要带这个分号,不然会一直卡住)
在这里插入图片描述
报了上图的错误之后,输入flush privileges;命令行执行,再执行 set password for ‘root’@‘localhost’=password(‘123456’);就可以成功设置密码了

再把my.ini的skip-grant-tables删除,然后重启MySQL服务器:net stop mysql ;net start mysql;

设置密码成功。

整合了一下网上的资源,这个亲测是有效的。
————————————————
版权声明:本文为CSDN博主「AMING-」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_36675754/article/details/81381341

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值