本文主要给大家简单讲讲如何自己动手写一个监控mysql主从复制的插件 ,相关专业术语大家可以上网查查或者找一些相关书籍补充一下,这里就不涉猎了,我们就直奔主题吧,希望如何自己动手写一个监控mysql主从复制的插件 这篇文章可以给大家带来一些实际帮助。
#!/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了。
如何自己动手写一个监控mysql主从复制的插件 就先给大家讲到这里,对于其它相关问题大家想要了解的可以持续关注我们的行业资讯。我们的板块内容每天都会捕捉一些行业新闻及专业知识分享给大家的。