shell脚本监控mysql主从状态

本站所有内容来自互联网收集,仅供学习和交流,请勿用于商业用途。如有侵权、不妥之处,请第一时间联系我们删除!Q群:迪思分享

免费资源网 – https://freexyz.cn/

此脚本首先判断mysql服务器是否运行,如果正常,继续判断主从,否则发邮件告警,只发一次。

判断主从状态是判断IO和SQL线程是否都为yes,如果不是则发邮件通知,只发一次。

复制代码

代码如下:

#!/bin/bash

#define mysql variable

mysql_user=”root”

mysql_pass=”123456″

email_addr=”slave@jb51.net”

mysql_status=`netstat -nl | awk NR>2{if ($4 ~ /.*:3306/) {print “Yes”;exit 0}}`

if [ “$mysql_status” == “Yes” ];then

slave_status=`mysql -u${mysql_user} -p${mysql_pass} -e”show slave statusG” | grep “Running” | awk {if ($2 != “Yes”) {print “No”;exit 1}}`

if [ “$slave_status” == “No” ];then

                echo “slave is not working!”

[ ! -f “/tmp/slave” ] && echo “Slave is not working!” | mail -s “Warn!MySQL Slave is not working” ${email_addr}

                touch /tmp/slave

        else

                echo “slave is working.”

[ -f “/tmp/slave” ] && rm -f /tmp/slave

        fi

        [ -f “/tmp/mysql_down” ] && rm -f /tmp/mysql_down

else

[ ! -f “/tmp/mysql_down” ] && echo “Mysql Server is down!” | mail -s “Warn!MySQL server is down!” ${email_addr}

touch /tmp/mysql_down

fi
免费资源网 – https://freexyz.cn/


© 版权声明
THE END
★喜欢这篇文章吗?喜欢的话,麻烦动动手指支持一下!★
点赞7 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容