a我考网

 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 81|回复: 0

[综合辅导] Linux认证:自动监控从MySQL同步的脚本

[复制链接]
发表于 2012-8-4 12:07:07 | 显示全部楼层 |阅读模式
笔者有不少基于公网类型的网站(没有硬件防火墙,直接置于IDC机房)做的都是MySQL主从架构,从机首要起备份数据库和冷备份的浸染,虽然从机宕机了问题不大,但也影响数据的备份工作;这样的网站稀有十个,如不美观一个一个手动的搜检,天天都要华侈不少时刻,所以设计了一个自动监控从MySQL同步的剧本。   剧本设计思绪:  ~9 F0 D- R1 U9 ?
  1、此剧本应该能顺应各类各样分歧的内外网情形,即IP分歧的情形;! e3 g* d3 L4 p) ?% B8 M$ Y
  2、让剧本也顺便监控下MySQL是否正常运行;
' w( U" _, `3 R) v- a  3、Slave机械的IO和SQL状况都必需为YES,缺一不成,这里用到了多重前提判定-a.- ^7 h, A. Y) N$ b
  剧本内容:1 Q4 W+ i0 O% V% ^3 }. Q6 A
  #!/bin/bash #check MySQL_Slave Status #crontab time 00:10 MYSQLPORT=`netstat -na|grep "LISTEN"|grep "3306"|awk -F+ '{print $4}'` MYSQLIP=`ifconfig eth0|grep "inet addr" | awk -F+ '{print $4}'` STATUS=$(/usr/local/webserver/mysql/bin/mysql -u yuhongchun -pyuhongchun101 -S /tmp/mysql.sock -e "show slave statusG" | grep -i "running")
  y+ R+ l' d3 J- C  n  r  IO_env=`echo $STATUS | grep IO | awk  ' {print $2}'` SQL_env=`echo $STATUS | grep SQL | awk  '{print $2}'`
) r1 B8 O8 _" k. D8 b' X  if then echo "mysql is running" else mail -s "warn!server: $MYSQLIP mysql is down" fi
) \7 `8 c. c6 O; O* i' {& B
  A0 n9 c1 N' `7 L! z9 [, _  if then echo "Slave is running!" else echo "#######  $date  #########">> /data/data/check_mysql_slave.log echo "Slave is not running!" >> /data/data/check_mysql_slave.log mail -s "warn! $MySQLIP_replicate_error"
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Woexam.Com ( 湘ICP备18023104号 )

GMT+8, 2024-5-18 00:40 , Processed in 0.273094 second(s), 21 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表