您的位置:首页 > 数据库 > MySQL

检测MySQL及MySQL主从的运行状态

2013-08-09 17:02 537 查看
#!/bin/bash
#Author:RELEARN
#check MySQL and MYSQL_SLAVE STATUS
MYSQL_PORT=`netstat -an | grep "LISTEN" | grep "3306" | awk -F[:" "]+ '{print $5}'`
MYSQL_IP=`/sbin/ifconfig eth0 | grep "inet addr" | awk -F[:" "]+ '{print $4}'`
STATUS=`/usr/bin/mysql -uroot -proot -e "show slave status\G" | grep -i "running"`
IO_PROC=`echo $STATUS | grep IO | awk '{print $2}'`
SQL_PROC=`echo $STATUS | grep SQL | awk '{print $2}'`
if [ "$MYSQL_PORT" == "3306" ]
then
echo `date +%Y.%m.%d-%T` "Mysql is running"
else
echo `date +%Y.%m.%d-%T` "Error Mysql is not running"
/usr/local/bin/sendEmail -f xyxsender@163.com -t 136XXXXXXXX@139.com -s smtp.163.com -u "MySQL Service Alert" -xu xyxsender -xp 123456 -m "Service:MySQL is stop\n\nAddress:$MYSQL_IP\n\nDate/Time: `date`"
fi

if [ "$IO_PROC" = "Yes" -a "$SQL_PROC" = "Yes" ]
then
echo `date +%Y.%m.%d-%T` "Slave is running"
else
echo `date +%Y.%m.%d-%T` "Error MySQL_Slave is not running"
/usr/local/bin/sendEmail -f xyxsender@163.com -t 136XXXXXXXX@139.com -s smtp.163.com -u "MySQL Service Alert" -xu xyxsender -xp 123456 -m "Service:MySQL_Slave Error\n\nAddress:$MYSQL_IP\n\nDate/Time: `date`"
fi
echo ""

本文出自 “态度决定一切” 博客,转载请与作者联系!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: