返回顶部

收藏

shell脚本通过show slave status监控mysql主从库同步状态

更多

本脚本应用在生产环境中,是运用mysql主从的基础上

#!/bin/bash
ip=`ifconfig eth0|sed -n 2p|awk  '{ print $2 }'|awk -F : '{ print $2 }'`
port=`netstat -anl|grep 3306 |sed -n '1p' |awk '{print $4}'|awk -F: '{ print $2}'`
array=($(mysql -uUSER -pPASSWD  -e "show slave status\G"|grep "Running" |awk '{print $2}'))
if [ "$port" == "3306" ]
   then
     if [ "${array[0]}" == "Yes" ] || [ "${array[1]}" == "Yes" ] 
          then 
            echo "slave is OK" 
       else 
            /home/shell/sendEmail/sendEmail -f  XXX@XXX -t XXX@XXX -s smtp.XXX -u "mysql主从复制出错" -xu user -xp passwd -m "${ip}:slave is error"
    fi
else
   /home/shell/sendEmail/sendEmail -f  XXX@XXX -t XXX@XXX -s smtp.XXX -u "mysql停止运行" -xu user -xp passwd -m "${ip}:mysql is shutdown and slave error"

fi

说明:

  • $ip 是获取本机IP
  • $port 是判断mysql服务是否正常运行
  • $array 是数组,$array[0] 是数组里的第一个参数,$array[1]是数组里的第二个参数
  • if ...then.....fi 根据获取参数来判断达到监控
  • ${ip}:mysql is shutdown and slave error ##注意因为mysql不正常运行,故主从复制出故障

最后给予可执行权限给脚本,使用crontab -e ,每十五分钟运行一次

*/15 * * * *  /home/shell/mysqm-s.sh

标签:shell,监控,mysql,主从库

收藏

0人收藏

支持

0

反对

0

相关聚客文章
  1. rocdk890 发表 2016-12-19 08:49:58 shell脚本监控mysql主从同步状态
  2. Vlix_Liu 发表 2015-11-30 16:10:59 运维工程师|数据库工程师|shell脚本常用知识
  3. root 发表 2015-05-03 07:18:01 MySQL数据库定时备份Shell脚本
  4. 公子 发表 2013-02-27 10:05:44 Zabbix监控mysql Master Slave主从同步(复制)状态,附脚本
  5. tomheng 发表 2013-11-22 14:35:53 一个简单的日志监控脚本
  6. 张映 发表 2015-01-10 08:51:59 munin 监控 mysql 2种方法
  7. iJustPlay 发表 2015-03-21 06:03:10 b374k | PHP WebShell
  8. 博主 发表 2011-11-15 05:00:00 【旧代码】mysql备份的shell脚本
  9. 张映 发表 2014-12-26 05:42:42 nagios pnp4nagios 图形监控 mysql
  10. rocdk890 发表 2015-02-27 05:27:02 shell脚本kill掉mysql锁表进程
  11. Ren 发表 2011-09-09 06:21:30 带自动清理功能的MySQL备份到FTP的Shell脚本
  12. 张映 发表 2014-12-25 09:42:14 nagios监控mysql