Navicat连接阿里云服务器MySQL报错2003-Can't connect to MySQL server on 'xxx.xxx.xxx.xxx'(10038)

问题描述:
今天在连接阿里云服务器(Windows Server 2012 R2)上的MySQL时出现,如下图所示的错误:
Navicat连接阿里云服务器MySQL报错2003-Can't connect to MySQL server on 'xxx.xxx.xxx.xxx'(10038)_第1张图片
在网上搜索解决办法时,总结主要包括两个方面:

  1. 确定服务器的3306端口对外开放
    通过在服务器–管理工具–高级安全windows防火墙–入站规则中修改3306端口的属性:
    Navicat连接阿里云服务器MySQL报错2003-Can't connect to MySQL server on 'xxx.xxx.xxx.xxx'(10038)_第2张图片
    Navicat连接阿里云服务器MySQL报错2003-Can't connect to MySQL server on 'xxx.xxx.xxx.xxx'(10038)_第3张图片
  2. 确定提供远程连接权限
    可通过以下两个MySQL命令进行设置:
    mysql>grant all privileges on *.* to ‘root’@’%’ identified by ‘密码’ with grant option;
    mysql>flush privileges;
    但是在我这里仍然得不到解决。后来突然想到之前在测试简单web项目时,在阿里控制台中设置了实例的8080端口的安全组入方向的规则才能正常访问网站,所以有没有可能是我忘记设置MySQL的3306端口的安全性组安全组入方向的规则呢?然后赶紧去控制台中查看,果然忘记设置了。
    Navicat连接阿里云服务器MySQL报错2003-Can't connect to MySQL server on 'xxx.xxx.xxx.xxx'(10038)_第4张图片
    于是,立马进行添加,如下图所示
    Navicat连接阿里云服务器MySQL报错2003-Can't connect to MySQL server on 'xxx.xxx.xxx.xxx'(10038)_第5张图片
    回到客户端,使用Navicat重新连接,连接成功。
    Navicat连接阿里云服务器MySQL报错2003-Can't connect to MySQL server on 'xxx.xxx.xxx.xxx'(10038)_第6张图片

你可能感兴趣的:(数据库)