mysql 5.5.57-log_mysql MHA报错 Can't exec "mysqlbinlog": No such file or directory at /usr/local/shar...

解决MHA报错及配置MySQL高可用方案

如果发现如下错误:

Can‘t exec "mysqlbinlog": No such file or directory at /usr/local/share/perl5/MHA/BinlogManager.pm line 99.

mysqlbinlog version not found!

Testing mysql connection and privileges..sh: mysql: command not found

mysql command failed with rc 127:0!

可以通过以下方法解决(在所有节点上执行):

fcecaa27ea5212ceb9bf034c36bfbf34.gif

192.168.2.128 [root ~]$ ln -s /usr/local/mysql/bin/mysqlbinlog /usr/local/bin/mysqlbinlog

192.168.2.128 [root ~]$ ln -s /usr/local/mysql/bin/mysql /usr/local/bin/mysql

192.168.2.129 [root ~]$ ln -s /usr/local/mysql/bin/mysqlbinlog /usr/local/bin/mysqlbinlog

192.168.2.129 [root ~]$ ln -s /usr/local/mysql/bin/mysql /usr/local/bin/mysql

192.168.2.130 [root ~]$ ln -s /usr/local/mysql/bin/mysqlbinlog /usr/local/bin/mysqlbinlog

192.168.2.130 [root ~]$ ln -s /usr/local/mysql/bin/mysql /usr/local/bin/mysql

fcecaa27ea5212ceb9bf034c36bfbf34.gif

再进行检查

fcecaa27ea5212ceb9bf034c36bfbf34.gif

192.168.2.131 [root ~]$ masterha_check_repl --conf=/etc/masterha/app1.cnf

Sun Jan 18 13:19:41 2015 - [info] Checking replication health on 192.168.2.129..

Sun Jan 18 13:19:41 2015 - [info] ok.

Sun Jan 18 13:19:41 2015 - [info] Checking replication health on 192.168.2.130..

Sun Jan 18 13:19:41 2015 - [info] ok.

Sun Jan 18 13:19:41 2015 - [info] Checking master_ip_failover_script status:

Sun Jan 18 13:19:41 2015 - [info] /usr/local/bin/master_ip_failover --command=status --ssh_user=root --orig_master_host=192.168.2.128 --orig_master_ip=192.168.2.128 --orig_master_port=3306

Bareword "FIXME_xxx" not allowed while "strict subs" in use at /usr/local/bin/master_ip_failover line 88.

Execution of /usr/local/bin/master_ip_failover aborted due to compilation errors.

Sun Jan 18 13:19:41 2015 - [error][/usr/local/share/perl5/MHA/MasterMonitor.pm, ln214] Failed to get master_ip_failover_script status with return code 255:0.

Sun Jan 18 13:19:41 2015 - [error][/usr/local/share/perl5/MHA/MasterMonitor.pm, ln383] Error happend on checking configurations. at /usr/local/bin/masterha_check_repl line 48

Sun Jan 18 13:19:41 2015 - [error][/usr/local/share/perl5/MHA/MasterMonitor.pm, ln478] Error happened on monitoring servers.

Sun Jan 18 13:19:41 2015 - [info] Got exit code 1 (Not master dead).

MySQL Replication Health is NOT OK!

192.168.2.131 [root ~]$

fcecaa27ea5212ceb9bf034c36bfbf34.gif

还是报错,纠结N久,才发现原因是:原来Failover两种方式:一种是虚拟IP地址,一种是全局配置文件。MHA并没有限定使用哪一种方式,而是让用户自己选择,虚拟IP地址的方式会牵扯到其它的软件,比如keepalive软件,而且还要修改脚本master_ip_failover。

所以先暂时注释master_ip_failover_script= /usr/local/bin/master_ip_failover这个选项。后面引入keepalived后和修改该脚本以后再开启该选项

192.168.2.131 [root ~]$ grep master_ip_failover /etc/masterha/app1.cnf

#master_ip_failover_script= /usr/local/bin/master_ip_failover

再次进行状态查看:

fcecaa27ea5212ceb9bf034c36bfbf34.gif

192.168.2.131 [root ~]$ masterha_check_repl --conf=/etc/masterha/app1.cnf

Sun Jan 18 13:23:57 2015 - [info] Slaves settings check done.

Sun Jan 18 13:23:57 2015 - [info]

192.168.2.128 (current master)

+--192.168.2.129

+--192.168.2.130

Sun Jan 18 13:23:57 2015 - [info] Checking replication health on 192.168.2.129..

Sun Jan 18 13:23:57 2015 - [info] ok.

Sun Jan 18 13:23:57 2015 - [info] Checking replication health on 192.168.2.130..

Sun Jan 18 13:23:57 2015 - [info] ok.

Sun Jan 18 13:23:57 2015 - [warning] master_ip_failover_script is not defined.

Sun Jan 18 13:23:57 2015 - [warning] shutdown_script is not defined.

Sun Jan 18 13:23:57 2015 - [info] Got exit code 0 (Not master dead).

MySQL Replication Health is OK.

192.168.2.131 [root ~]$

fcecaa27ea5212ceb9bf034c36bfbf34.gif

已经没有明显报错,只有两个警告而已,复制也显示正常了,哈哈,没报错了,先乐一会^0^

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值