mysql报错:1045-Access denied for user ‘root‘@‘localhost‘(using password:YES)

一个自我解决该报错的记录,以防下次还崩溃地找

解决1(失败):navicat连接MySQL报错:1045 - Access denied for user ‘root‘@‘localhost‘ (using password: YES)_cmd中可以连接,而navitate中access denied for user 'root'@'-CSDN博客

第一次 :1.路径:C:\ProgramData\MySQL\MySQL Server 8.0

找到my.ini并在[mysqld]下增加skip-grant-tables保存退出

-->可能会权限不足,右键属性-安全-编辑-users-添加权限即可

2.重启mysql80

-->net start mysql80

-->net stop mysql80

3.进入MySQL

输入mysql -u root -p,空格进入。进入成功可看到welcom字样

(第二次尝试卡在此次,无法再空密码强制进入,遂放弃)

4.输入use mysql

UPDATE mysql.user SET authentication_string = '1234' WHERE user = 'root';
(此语句手输一直报错ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '("1234") where user="root"' at line 1,格式问题,但无论双引号"",单引号'',``均报错,后跑ai复制成功)

flush privileges

quit

5.删除my.ini并在[mysqld]下增加skip-grant-tables
6.在navicat中测试连接

此步我失败,仍报错1045;重复上述步骤再试仍失败。遂寻别法。

解决2(成功):

1045 - Access denied for user ‘root @‘localhost‘ (using password: YES/NO)最新解决办法_如何解决 access denied for user 'root'@'localhost-CSDN博客

1.请严格按照步骤,net stop mysql80后服务(ctrl+alt+delete)中mysql80仍在运行;
2.我本机mysql路径为: C:\Program Files\MySQL\MySQL Server 8.0

3.照做即可
4.编辑连接-测试连接-连接成功(此时可以连上该mysql,再点会弹出更新密码框)

另有一点是,除了这个mysql80的连接可以连上(新建连接也成功),其他数据库的连接无法通过此方法更改密码重连。

感谢两位大佬的帖子

  • 23
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值