nagios中自己写的监控mysql主从复制的插件

大家可能遇到这样的问题,mysql的主已经写入数据了,但是却没有同步到从myql那里,或者延迟很长时间才同步过去。说明一下我们的网络环境,我们每台数据库都有两个网线,分别连接内网和外网的千兆交换机,速度肯定不是问题。如果延迟很长的话,肯定是出问题,比如数据库被lock了,或者开发人员的一些不当的操作等。这时候就需要监控主从同步的状态已经主从同步的时间间隔等。以便及时与开发人员沟通,及时解决问题。下面是我自己写的一个脚本名字叫check_mysql_delay:

  #!/bin/bash aa=`/usr/local/mysql/bin/mysql -u 用户 –p密码 –socket=/数据库目录/$1/mysql_$1.sock -e “show slave status\G”|egrep Read_Master_Log_Pos|awk
   ‘{print $2}’` bb=`/usr/local/mysql/bin/mysql -u 用户 –p密码 –socket=/数据库目录/$1/mysql_$1.sock -e “show slave status\G”|egrep Exec_Master_Log_Pos|awk
   ‘{print $2}’` cc=`expr $aa – $bb` if [ $cc -gt 10000 ] then  echo “$1 is CRITICAL $aa $bb $cc”  #exit $STATE_CRITICAL;  exit 2; else  echo “$1 is OK $aa $bb $cc”  #exit $STATE_OK;  exit 0; fi 把该脚本放到/usr/local/nagios/libexec目录下面。 然后修改/usr/local/nagios/etc/nrpe.cfg,在后面添加一行 command[check_mysql_delay3306]=/usr/local/nagios/libexec/check_mysql_delay 3306 注意这个3306就是给上面脚本当中$1赋值用的,如果有多个mysql实例的话,可以多写几行。 然后修改nagios服务器端的配置文件。在服务的配置文件中添加如下内容 define service {
        use    db-server
        host_name host当中定义的主机名
        service_description check_rep_delay3306
        check_command check_nrpe!check_mysql_delay3306 } 然后重新加载一下nagios就ok了。

1. 本站所有资源来源于用户上传和网络,因此不包含技术服务请大家谅解!如有侵权请邮件联系客服!10210454@qq.com
2. 本站不保证所提供所有下载的资源的准确性、安全性和完整性,资源仅供下载学习之用!如有链接无法下载、失效或广告,请联系客服处理,有奖励!
3. 您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容资源!如用于商业或者非法用途,与本站无关,一切后果请用户自负!
4. 如果您也有好的资源或教程,您可以投稿发布,成功分享后有RB奖励和额外RMB收入!

磊宇堂正在使用的服务器 维护管理由磊宇云服务器提供支持

磊宇堂 » nagios中自己写的监控mysql主从复制的插件

提供最优质的资源集合

立即查看 了解详情