Mysql8.0 3306端口无法远程连接

在阿里云上搭建MySql8.0数据库服务,在阿里云上可以成功连接登陆使用,但用自己的电脑远程连接时却无法成功连接

经过资料查找,找出原因如下:

1、首先通过查看MySQL的的用户信息

可以看到host字段均为localhost,意思是只允许本地IP访问

执行 update mysql.user set host = '%' where user = 'root';

设置允许被任意IP地址访问

然后执行 flush privileges;

让改动生效

2、第二个原因是MySql 8.0版本修改了默认的加密规则,用Navicat连接会报错,解决办法为执行如下语句

ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'root123';

'root'@'%' 中root为用户名,'%'为user表host字段的值。'root123'为用户密码。

然后就远程连接了

posted @ 2019-01-20 21:43  有追求的程序员  阅读(8230)  评论(0编辑  收藏  举报