我使用了keepalived + proxy + mysql
法师:192.168.10.1
从站:192.168.10.2
主VIP:192.168.10.100
当我使用CHANGE MASTER TO MASTER_HOST='192.168.10.1'...
时,复制没问题,当我使用CHANGE MASTER TO MASTER_HOST='192.168.10.100'...
时,Slave I / O无法连接到master,我得到这样的错误:
150522 15:21:50 [ERROR] Slave I / O:连接到master时出错 'repl@192.168.10.100:3307' - 重试时间:60次重试:86400, Error_code:2003
150522 15:21:50 [注意]从属SQL线程初始化, 在位置107的日志'mysql-bin.000001'中开始复制,继电器 log'./mmm-relay-bin.000001'位置:4
在slave中,我使用mysql -urepl -pslavepass -h192.168.10.100 -P3307
,我可以登录db,为什么Slave I / O无法连接到master?
答案 0 :(得分:1)
您可能需要在主服务器上取消阻止端口3306。 http://www.liquidweb.com/kb/opening-ports-in-your-firewall/
答案 1 :(得分:0)
您可能需要针对3307等非标准端口调整SELinux。首先检查允许的端口(如果找不到policycoreutils-python
命令,则安装semanage
包):
# semanage port -l | grep 3306
mysqld_port_t tcp 1186, 3306
那里没有3307端口。添加它:
# semanage port -a -t mysqld_port_t -p tcp 3307
# semanage port -l | grep 3306
mysqld_port_t tcp 3307, 1186, 3306
来源:http://dossy.org/2011/11/mysql-replication-connection-error-on-non-standard-ports/