MHA监控进程异常退出(MHA版本:0.56)

最近遇到一个很是诡异的问题,mha后台进程本身中断退出了。如下是报错:
Mon Dec 21 20:16:07 2015 - [info] OK.
Mon Dec 21 20:16:07 2015 - [warning] shutdown_script is not defined.
Mon Dec 21 20:16:07 2015 - [info] Set master ping interval 1 seconds.
Mon Dec 21 20:16:07 2015 - [info] Set secondary check script: /etc/mha/bin/masterha_secondary_check -s 192.168.17.93 -s 192.168.18.93
Mon Dec 21 20:16:07 2015 - [info] Starting ping health check on 192.168.17.94(192.168.17.94:3306)..
Mon Dec 21 20:16:07 2015 - [info] Ping(SELECT) succeeded, waiting until MySQL doesn't respond..
Tue Dec 22 10:36:42 2015 - [info] Got terminate signal. Exit.html

看报错第一反应理解为因为中断信号断开而致使退出程序mysql

这里有个疑问:为何我用nohup /etc/mha/bin/masterha_manager --conf=/etc/mha/app1.cnf --remove_dead_master_conf --ignore_last_failover & 
这样的方式执行后台运行命令,怎么程序会随终端断开而退出呢?想不通。印象中之前执行都没有这样的问题的,确定是哪里不对sql

查阅nohup相关的资料:
使用时注意:
在当shell中提示了nohup成功后,还须要按终端上键盘任意键退回到shell输入命令窗口,而后经过在shell中输入exit来退出终端;若是在nohup执行成功后直接点关闭程序按钮关闭终端的话,这时候会断掉该命令所对应的session,致使nohup对应的进程被通知须要一块儿shutdown,起不到关掉终端后调用程序继续后台运行的做用。shell

看到这里回忆下以前本身的操做多是有问题的,因而对nohup操做进行下面测试:
注:mha管理服务端是安装在A机器上,服务器

测试1:直接链接mysqlA服务器,在A服务器执行nohup /etc/mha/bin/masterha_manager --conf=/etc/mha/app1.cnf --remove_dead_master_conf --ignore_last_failover & ,正常退出,或直接关闭终端退出都不会引发mha后台进程异常退出。session

测试2:先链接mysqlB服务器,再从B服务器ssh到A服务器,再重复上面的命令当执行完后台命令后正常exit退出终端后,一切和上面的操做同样,mha后台进程不会异常退出。app

测试3:先链接mysqlB服务器,再从B服务器ssh到A服务器,再重复上面的命令当执行完后台命令后非正常退出(终端超时断开或直接关闭securecrt程序)的话,这个时候mha后台进程也跟随终端退出而退出.ssh

仔细回忆了下我确实是经过某台服务器ssh到mha服务器上面执行的命令没有正常退出终端形成的。问题终于找到了测试


固然若是你的问题和个人不同也能够用另外方法避免后台进程异常退出,那就是把命令写在脚本里面经过运行脚本就万无一失了.htm

 转载:

 https://www.cnblogs.com/mysqlplus/p/5070757.html

相关文章
相关标签/搜索