MySQL8:1045 - Access denied for user ‘root‘@‘172.17.0.1‘ (using password: YES)

2 篇文章 0 订阅


使用Navicat连接centos8 的docker容器上的MySQL8,显示错误1045 - Access denied for user 'root'@'172.17.0.1' (using password: YES)
很迷惑啊,之前明明连接好好的,怎么突然就不能远程连接了

接着一顿操作:看看端口和防火墙状态,对端口ip进行限制,修改密码都不行,至于远程登录的开启,之前都可以连接的,怎么就不能连接了呢,但还是试着开启远程登录,还是不行,直接SQL执行出错了,SQL语句明明没问题,麻了。

怀疑数据库被别处登录了,但又在主机终端查询了一下,发现数据库的信息都还在,所以不是这问题

很烦啊,又是这种问题搞很久

无奈,又在主机终端查询了一下mysql的用户情况,发现问题了

在这里插入图片描述
用户root的host不知怎么的被修改为localhost了,把localhost改为%(%表示对所有ipv4地址都生效)


行动!!

(1)进入mysql数据库,注意这里不是MySQL,是MySQL中的一个数据库,叫mysql

use mysql

(2)将localhost修改为%

update user set Host='%' where User='root';

(3)刷新权限

flush privileges;

(4)Navicat测试连接

在这里插入图片描述

欧了~

附:MySQL8修改密码

ALTER USER '用户名'@'%'IDENTIFIED WITH MYSQL_NATIVE_PASSWORD BY '新密码';
  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
ERROR 1045 (28000): Access denied for user 'root'@'172.17.0.1' (using password: YES)是MySQL登录报错的一种常见情况。这个错误表示无法以指定的用户名和密码连接到MySQL数据库。关于这个错误的原因和解决方法有几种可能性。 首先,可能是远程连接被禁止或未配置。MySQL默认情况下不允许远程连接,需要在MySQL配置文件中进行相应的设置。如果远程连接被禁止,需要修改MySQL配置文件,并确保允许远程连接。 其次,可能是密码错误。这可能是由于输入的密码不正确导致的。请确保输入的密码与MySQL数据库中对应用户的密码一致。 解决这个问题的方法可以是: 1. 检查MySQL的配置文件,确保允许远程连接。可以编辑MySQL的配置文件,添加类似下面的配置: ```bind-address = 0.0.0.0``` 这会允许来自任何IP地址的远程连接。注意,这样做会增加系统的安全风险,因此请谨慎操作。 2. 确保输入的密码是正确的。检查密码是否输错,并确保密码和用户名正确匹配。 3. 如果仍然无法解决问题,可以尝试重置MySQLroot用户密码。可以参考中提供的链接,里面提供了一种重置MySQL root密码的方法。 总结起来,ERROR 1045 (28000): Access denied for user 'root'@'172.17.0.1' (using password: YES)是MySQL登录报错的一种情况,可能是由于远程连接被禁止或密码错误导致的。可以通过允许远程连接、检查密码是否正确以及重置密码等方法来解决这个问题。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值