脚本原理很简单,先连到mysql里面,并把数据库同步的状态字段Slave_IO_Running,Slave_SQL_Running的值取出来,
如果不是"YES",则同步出现问题,后用mail实现邮件发送功能。若手机开通139或189邮箱,则可实现短信提醒功能。
代码如下:
#!/bin/bash
username='root'
password='123456'
host1="192.168.0.x"
host2="192."
mailist='xxxxx@189,qqqqq@189'
mysqlcmd=/usr/local/mysql-5.5.8/bin/mysql
Host1_Slave_IO_Running=`$mysqlcmd -h$host1 -u$username -p$password -e "show slave status G"|grep Slave_IO_Running|awk -F: '{print $2 }'`
Host2_Slave_IO_Running=`$mysqlcmd -h$host2 -u$username -p$password -e "show slave status G"|grep Slave_IO_Running|awk -F: '{print $2 }'`
Host1_Slave_SQL_Running=`$mysqlcmd -h$host1 -u$username -p$password -e "show slave status G"|grep Slave_SQL_Running|awk -F: '{print $2 }'`
Host2_Slave_SQL_Running=`$mysqlcmd -h$host2 -u$username -p$password -e "show slave status G"|grep Slave_SQL_Running|awk -F: '{print $2 }'`
if [ $Host1_Slave_IO_Running != "Yes" ] || [ $Host1_Slave_SQL_Running != "Yes" ]
thenmail -s "alarm!" "$maillist" <<EOF
" $host1 Slave_IO_Running OR Slave_SQL_Running is not running !!!"
EOF
fiif [ $Host2_Slave_IO_Running != "Yes" ] || [ $Host2_Slave_SQL_Running != "Yes" ]
then
mail -s "alarm!" "$mailist" <<EOF"$host2 Slave_IO_Running OR Slave_SQL_Running is not running !!!"
EOF
fi
本文发布于:2024-02-01 11:57:30,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/170675985036425.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |