一.问题描述
Mycat配置完成后正常启动,查看 wrapper.log日志无任何异常,在服务器使用 mysql -uroot -h127.0.0.1 -p123456 -P9066 进行命令行监控功能正常 。但Navicat始终连接不上.。
二.排查思路
我看到网上好多说和Navicat和Mycat版本有关,但由于解决过程中没看合适的帖子,就先没按照这个方向进行排查。而是定位到项目开发中常见的问题,8066端口未开启,外部无法访问,事实证明我的问题的确也是这个1引起的。
ps:我的Navicate版本是11.0.19,Mycat版本.1.6-RELEASE (都是比较老的)
三.解决方案
1. 就是Linux开启端口的命令
/sbin/iptables -I INPUT -p tcp --dport 8066 -j ACCEPT #开启8000端口
/etc/rc.d/init.d/iptables save #保存配置
/etc/rc.d/init.d/iptables restart #重启服务
2.要是执行第二条语句时提示etc/sysconfig/iptables不存在
原因:在新安装的linux系统中,防火墙默认是被禁掉的,一般也没有配置过任何防火墙的策略,所有不存在/etc/sysconfig/iptables文件。
解决: 在控制台使用iptables命令随便写一条防火墙规则,如:iptables -P OUTPUT ACCEPT
执行以下语句开启端口即可.
iptables -I INPUT -p tcp --dport 8066 -j ACCEPT
iptables -P OUTPUT ACCEPT
service iptables save