服务器之家:专注于VPS、云服务器配置技术及软件下载分享
分类导航

云服务器|WEB服务器|FTP服务器|邮件服务器|虚拟主机|服务器安全|DNS服务器|服务器知识|Nginx|IIS|Tomcat|

服务器之家 - 服务器技术 - 服务器知识 - 远程连接Docker上的Mysql失败的分析与解决方案

远程连接Docker上的Mysql失败的分析与解决方案

2023-04-11 17:53匆匆的那年 服务器知识

这篇文章主要介绍了远程连接Docker上的Mysql失败的分析与解决方案的相关资料,需要的朋友可以参考下

之前VMWare虚拟机CentOS7使用DHCP,导致只要重启操作系统,网卡IP地址就改变。于是把网卡修改为手工设定IP地址,结果导致远程连接mysql出现如下错误,花了很多时间还没有解决,最终偶然想到Docker被外部请求访问可能有中转行为才得到解决。

ERROR 2003 (HY000): Can't connect to MySQL server on '192.168.101.26' (10060)

附上网卡配置文件修改指令:

cd /etc/sysconfig/system-scripts

vim ifcfg-ens33

以及网卡配置文件ifcfg-ens33内容:

远程连接Docker上的Mysql失败的分析与解决方案

解决方案:

(1)刚开始,我判断可能是防火墙没有开启端口3306

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

firewall-cmd --reload

firewall-cmd --query-port=3306/tcp

远程连接Docker上的Mysql失败的分析与解决方案

但是远程连接还是存在同样的连接问题。

远程连接Docker上的Mysql失败的分析与解决方案

(2)于是判断mysql服务没有被防火墙允许,执行:

firewall-cmd --add-service=mysql

firewall-cmd --reload

firewall-cmd --query-service=mysql

但是远程连接还是存在同样的连接问题。

(3)于是判断docker没有被防火墙允许,但是提示如下错误:

Error: INVALID_SERVICE: docker

(4)到这里卡住了。Docker被外部请求访问,应该有一系列IP包转发行为,求助网络,有人认为防火墙默认不允许NAT转发,所以才导致很多问题产生。于是执行如下指令:

firewall-cmd --zone=public --add-masquerade --permanent

firewall-cmd --permanent --zone=trusted --change-interface=docker0

firewall-cmd --reload

systemctl restart docker

docker start 66bebcd41183

远程连接Docker上的Mysql失败的分析与解决方案

到此这篇关于远程连接Docker上的Mysql失败的分析与解决方案的文章就介绍到这了,更多相关远程连接Docker上的Mysql失败内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!

原文地址:https://blog.51cto.com/u_5526964/6021932

延伸 · 阅读

精彩推荐