无法远程连接原因有以下几点:
方法一:
如果你使用的时阿里云服务器,需要手动添加安全组规则
管理控制台 > 实例 > 点击最右侧的更多 > 网络和安全组 > 安全组配置 > 配置规则 > 添加安全组规则(可能目录更新 找到添加安全组规则)
方法二:查看是否是被防火墙拦截
查看所有打开的端口:
firewall-cmd --zone=public --list-ports
如果没有则添加3306端口
添加
firewall-cmd --zone=public --add-port=3306/tcp --permanent (--permanent永久生效,没有此参数重启后失效)
重新载入
firewall-cmd --reload
查看
firewall-cmd --zone= public --query-port=3306/tcp
删除
firewall-cmd --zone= public --remove-port=80/tcp --permanent
更多防火墙命令
方法三:远程用户访问权限导致
登录
mysql -uroot -p
use mysql
查看用户权限
select host,user from user;
root 对应的host是 % 说明是允许任意ip访问的
如果不是则授权:
grant all privileges on *.* to 'root'@'%' identified by 'root用户的密码';
这里的 % 可以写成固定ip访问(‘root’@‘192.167.101.22’),%代表任意
flush privileges; //刷新
如果以上都没解决,可以把防火墙关闭。
原文参考:https://blog.csdn.net/kerryqpw/article/details/103572373