docker mysql无法远程访问的解决方法
1 问题
一台测试机,一台压力机, 两台机器有个单独的小网,测试机内部署了docker mysql。从压力机无法访问docker内的mysql,测试机本身可以访问。
2 解决
百度了一把, 基本都是数据内要配置允许远程访问,希望以后度娘的回答能筛选的多样化一点,翻了几页都是一样的答案。
GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost';
flush privileges;
这个已经配好了,并且防火墙,selinux都已经关闭,觉得执行不够彻底,专门执行了iptables -F清掉端口转发的限制。为了防止代理对网络的影响,访问外网的代理也关闭了,还是不行。
最后发现路由转发没有开,执行如下命令开启
echo 1 > /proc/sys/net/ipv4/ip_forward
重启docker服务后,远程就可以访问了。
写到/etc/sysctl.conf让他重启可生效
net.ipv4.ip_forward=1
docker mysql无法远程访问的解决方法
1 问题
一台测试机,一台压力机, 两台机器有个单独的小网,测试机内部署了docker mysql。从压力机无法访问docker内的mysql,测试机本身可以访问。
2 解决
百度了一把, 基本都是数据内要配置允许远程访问,希望以后度娘的回答能筛选的多样化一点,翻了几页都是一样的答案。
GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost';
flush privileges;
这个已经配好了,并且防火墙,selinux都已经关闭,觉得执行不够彻底,专门执行了iptables -F清掉端口转发的限制。为了防止代理对网络的影响,访问外网的代理也关闭了,还是不行。
最后发现路由转发没有开,执行如下命令开启
echo 1 > /proc/sys/net/ipv4/ip_forward
重启docker服务后,远程就可以访问了。
写到/etc/sysctl.conf让他重启可生效
net.ipv4.ip_forward=1