如果数据库连接失败,检查以下几个地方:
1:防火墙,查看防火墙是否打开:
systemctl status firewalld
关闭状态:
开启状态:
如果是开启状态,则很有可能是防火墙拦截掉了3306端口的访问,两个解决方法:
(1): 关闭防火墙,这是最简单也是最快的方式:
systemctl stop firewalld
(2):不想直接关闭防火墙,那就开放指定端口:
firewall-cmd --zone=public --add-port=3306/tcp --permanent
看到输出success就是成功了。
然后重启防火墙使其生效:
systemctl restart firewalld
查看已开放端口:
firewall-cmd --zone=public --list-ports
2:查看云服务器的安全组是否开放:
找到云服务器的安全组设置:
阿里云:
华为云:
其他云平台应该也大同小异,都在控制台中找即可。
点进去之后选择创建安全组:
阿里云:
然后选择创建
然后返回刚刚安全组界面,点击更多操作,管理实例:
点进来之后选择实例加入安全组:
选择你自己的实例然后点击确定即可(不需要重启实例)。
华为云:
然后点击立刻创建。
然后回到刚刚的安全组界面选择管理实例:
选择你的实例:
然后点击确定即可(不需重启实例)。
更改安全组之后不需要重启实例,但是要稍微等待一两分钟,他会自动生效。
最后切记,这两种方式是组合起来用的,按照操作完成即可,再次连接,看看是不是连上了。