暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

服务器的数据库连不上了【服务已起、防火墙已关、端口已开、netlent 端口不通】

牛哄哄的柯南 2022-06-29
837

服务器的数据库连不上了【服务已起、防火墙已关、端口已开、netlent 端口不通】

首先说明:这篇文章针对 服务已经起来了、防火墙是关闭的、安全组端口也打开了,在docker 容器中可以连接MySQL,但是Navicat中不能连,同时 netlent IP 端口 也不同,Navicat报错如下:

image-20220629133907952

如果你也是这种奇葩问题,你可以看下下面的解决方案。

首先确认下防火墙状态

systemctl status firewalld

image-20220629134259912

没毛病,在关着。

再看下端口

netstat -antulp | grep XXXX

image-20220629134447599

也没毛病,docker mysql 起来端口就在使用,docker mysql 关闭的话,端口就未使用

自己确认下自己服务器的安全组对应的端口是否打开了

telnet IP 端口 测试连接下

image-20220629134733825

结果是连接失败,没事,接着往下

执行命令:cat proc/sys/net/ipv4/ip_forward

image-20220629135002183

注意,这里是0,是不对的,0表示ipv4转发出于关闭状态

我们需要修改成 1

执行命令echo 1 > /proc/sys/net/ipv4/ip_forward

image-20220629135134818

这样我们就开启了ipv4转发

Navicat 重连

image-20220629135234512

OK,这样就搞定了,不知因为什么原因导致 ipv4转发 关闭了

可能的原因:

重启服务器后被恢复了

部分进程可能修改了系统设置

我们把ipv4转发打开就好了,因为 服务器里面部署容器的话是需要开启ip转发功能的
,一般不需要我们自己处理的,不知为啥遇到了,我们开启就可以解决问题了。


文章转载自牛哄哄的柯南,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论