教程集 www.jiaochengji.com
教程集 >  脚本编程  >  shell  >  正文 定时检测mysql同步状态的shell脚本

定时检测mysql同步状态的shell脚本

发布时间:2014-12-11   编辑:jiaochengji.com
分享一例实时检测mysql同步状态的shell脚本,用于实时监控mysq的同步状态,有需要的朋友参考下。

实时检测mysql同步状态的shell脚本:
 

复制代码 代码示例:
#!/bin/sh
 
#check MySQL_Slave Status
#crontab time 00:10
MYSQL_USER="root"
MYSQL_PWD="123456"
MYSQL_SLAVE_LOG="/tmp/check_mysql_slave.log"
EMAIL="1351010****@139.com"
 
MYSQL_PORT=`netstat -na|grep "LISTEN"|grep "3306"|awk -F[:" "]+ '{print $5}'`
MYSQL_IP=`ifconfig eth0|grep "inet addr" | awk -F[:" "]+ '{print $4}'`
MYSQL_SLAVE_STATUS=$(/usr/local/webserver/mysql/bin/mysql -u root -psylc23hua -S /tmp/mysql.sock -e "show slave status\G" | grep -i "running")
IO_ENV=`echo $MYSQL_SLAVE_STATUS | grep IO | awk ' {print $2}'`
SQL_ENV=`echo $MYSQL_SLAVE_STATUS | grep SQL | awk '{print $2}'`
NOW=$(date -d today +'%Y-%m-%d %H:%M:%S')
 
if [ "$MYSQL_PORT" = "3306" ];then
  echo "mysql is running!"
else
  mail -s "warn!server: $MYSQL_IP mysql is down" "$EMAIL"
fi
 
if [ "$IO_ENV" = "Yes" -a "$SQL_ENV" = "Yes" ];then
  echo "Slave is running!"
else
  echo "[ $NOW ] Slave is not running!" >> "$MYSQL_SLAVE_LOG"
  cat "$MYSQL_SLAVE_LOG" | mail -s "WARN! ${MySQL_IP}_replicate_error" "$EMAIL"
fi
 
exit 0

您可能感兴趣的文章:
定时检测mysql同步状态的shell脚本
mysql备份与同步脚本
自动监控mysql主从同步的shell脚本代码
mysql存活健康状况检测脚本
mysql binlog 自动清理脚本一例
ping检测告警函数的shell脚本
监控Linux服务器网站状态的SHELL脚本
shell监控网站状态 监测网站运行状态的shell脚本
定时自动ping主机的shell脚本(图文)
一个自动配置mysql主从的shell脚本

关键词: mysql同步   
[关闭]
~ ~