方式一:
由于服务器没有对外开放mysql的默认端口3306导致

CentOs7以下开启方式

iptables -I INPUT -p tcp --dport 3306 -j ACCEPT

iptables save

service iptables restart

CnetOs7开启方式

firewall-cmd --permanent --zone=public --add-port=3306/tcp

firewall-cmd --reload

方式二:
未设置远程用户访问权限导致

在服务器上连接mysql

use mysql;

select host,user from user;

±----------±-----+
| host | user |
±----------±-----+
| % | root |
| 127.0.0.1 | root |

host代表在哪个host可以用该用户远程访问%代表任意

下面的开启方式是以root用户为例

grant all privileges on . to ‘root’@’%’ identified by ‘root用户的密码’;

flush privileges;

方式三:
如果你使用的是阿里云的ECS则需要手动添加安全组规则

管理控制台 > 实例 > 点击最右侧的更多 > 网络和安全组 > 安全组配置 > 配置规则 > 添加安全组规则

最后重启服务器,一般不用重启也会生效

如果上述方法都没有解决问题,试着关闭本机的防火墙

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐