首页 Linux网维 nagios中自己写的监控mysql主从复制的插件

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

大家可能遇到这样的问题,mysql的主已经写入数据了,但是却没有同步到从myql那里,或者延迟很长时间才同步过去说明一下我们的网络环境,我们每台数据库都有两个网线,分别连接内网和外…

大家可能遇到这样的问题,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了。

免责声明:文章内容不代表本站立场,本站不对其内容的真实性、完整性、准确性给予任何担保、暗示和承诺,仅供读者参考,文章版权归原作者所有。如本文内容影响到您的合法权益(内容、图片等),请及时联系本站,我们会及时删除处理。

作者: 3182235786a

为您推荐

linux文件命令

linux文件命令

在 Linux 中,我们可以使用 `with open()` 语句和 `write()` 函数来写入文件。以下是一个简单...
linux的命令

linux的命令

以下是一个简单的 Linux 命令示例,该命令将显示当前日期和时间: “`c #include <st...
linux 命令

linux 命令

由于 Linux 命令是由 C 语言编写的,因此下面是一个简单的用中文编写的 Linux 命令示例,它将输出“Hello...
linux命令tar

linux命令tar

这个问题看起来有些模糊,我不确定您是想了解如何在 Linux 系统中使用 tar 命令,还是如何编写一个名为 tar 的...
linux压缩命令

linux压缩命令

Linux压缩命令:高效管理文件和目录 Linux操作系统提供了一系列强大的压缩命令,使您能够高效地管理文件和目录。无论...

发表回复

返回顶部