navicate连接Mysql5.7时,显示Access denied for user 'root'@'localhost' (using password: YES) 错误...

最近新装了Mysql5.7,按如下设置好了允许远程连接

   (1)找到mysql配置文件并修改

sudo vi /etc/mysql/mysql.conf.d/mysqld.cnf
将bind-address=127.0.0.1注释

  

(2)登录mysql,运行命令
grant all privileges on *.* to 'root'@'%' identified by 'mysql' with grant option; # 所有的地址都可以使用root用户,密码为mysql远程访问所有的数据库
flush privileges;

  

(3)检查了下防火墙并没有屏蔽端口号
(4)直接在navicate上连接mysql数据库,报错如下:


查了很多博客,未果,后面仔细分析应该是密码的错误,因为自己用navicate连接数据库使用的是user为root,host为localhost的密码登陆的,如下可发现
host为localhost、%(任意ip,我们连接时使用的就是这个)的密码不一样(ps Mysql5.7版本以后password变为authentication_string)

(5)修改user为root,host为‘%’的密码,改成跟host为localhost密码一样,这样不容易忘记(若知道密码时什么就不需要改)


查看密码发现变成一样了,如下图

(6)在navicate登录,--->成功

 

 

转载于:https://www.cnblogs.com/jj1106/p/11054811.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值