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

nagios中自己写的监控mysql主从复制的插件相关推荐

  1. python写mysql脚本_使用python写一个监控mysql的脚本,在zabbix web上加上模板

    使用python写一个监控mysql的脚本,在zabbix web上加上模板: ##先使用MySQLdb的接口关联数据库. [root@cml python]# cat check_Mysql_cus ...

  2. shell监控脚本-监控mysql 主从复制

    注意:请先参考 shell监控脚本-准备工作,监控脚本在 rhel5 下测试正常,其它版本的linux 系统请自行测试 #监控mysql 主从复制 cat chk_mysql_rep.sh #!/bi ...

  3. mysql 主从复制 监控_监控MySQL主从复制状态的脚本

    思路是通过show slave status这条命令来查看主从复制的状态,然后根据状态字段的值进行判断. show slave status\G; #显示slave状态; slave_IO_Runni ...

  4. nagios监控mysql主从复制

    环境: Centos5.6 mysql只做同步指定库,没有同步mysql库用户数据 登陆从服务器mysql,添加验证的用户 grant replication client on *.* to 'sl ...

  5. 监控mysql主从复制监控_shell脚本监控mysql主从同步状态

    mysql做了主从同步之后,偶尔出现过几次主从同步报错或延迟,由于没有任何监控和报警机制,只有在应用程序报错的时候才能发现数据同步出问题了.所以写了个shell脚本用来检测mysql数据库的同步状态 ...

  6. zabbix mysql复制延迟_Zabbix监控mysql主从复制状态

    原理 mysql slave show slave status\G 在输出信息中查看I/O线程和SQL线程的状态值(YES为正常,NO为错误) Slave_IO_Running: Yes Slave ...

  7. nagios check_mysql uptime_nagios使用check_mysql监控mysql

    如果没有check_mysql插件,需要安装Mysql数据库 1.建立专用数据库: [root@svr3 ~]#mysql -u root -p Enter password: Welcome to ...

  8. mysql 主从复制 性能_zabbix监控mysql各项性能,主从复制

    ###################################################### 监控mysql(默认监控模板不能用,再agentd.conf开启自定义key,自己编写脚本 ...

  9. MySQL主从复制(Master-Slave)与读写分离(MySQL-Proxy)实践

    ..-------------------------------------master-------------------------------- mysql> GRANT REPLIC ...

最新文章

  1. python命名空间和闭包_Python函数基础实例详解【函数嵌套,命名空间,函数对象,闭包函数等】...
  2. Ubuntu14.04安装JDK
  3. 清除webbrowser cookie/session的6种方法
  4. 前沿分享|阿里云资深技术专家 魏闯先:AnalyticDB PostgreSQL年度新版本发布
  5. MyBatis-Plus通用枚举自动关联注入
  6. Laravel源码解析之Console内核
  7. 微分方程之————微分方程的基本概念
  8. 树莓派保持网络连接shell脚本
  9. zigbee CC2530 系列教程 14 蓝牙控制实验
  10. 性格测试c语言程序,性格测试的题目及答案
  11. 推荐10款最好的免费项目管理工具
  12. 在线购物系统——设计类
  13. 教程 | 如何用思维导图做自我介绍
  14. xsocks 64位平台下编译问题小记
  15. error C2039: ‘tr1‘: is not a member of ‘std‘
  16. 人脸解锁手机与电影阿丽塔背后的3D原理:云从科技的技术突破
  17. 手机**##,试试看
  18. 人工神经网络的典型模型,人工神经网络模型定义
  19. 51单片机和32单片机有什么区别?该从哪个开始入门学习?
  20. 如何查看linux内核版本

热门文章

  1. linux查找文件里面的内容
  2. 转: 常见加密算法分,用途,原理以及比较
  3. 修改grub2安装双系统的windows引导
  4. T400的5100无线网卡在Centos下跑起来了
  5. 给你十年时间你可以做到吗?
  6. 8086/8088 存储器分段概念
  7. 搭建Qt 5.3.1 for Windows Phone 8开发环境
  8. iOS开发:动态添加按钮
  9. Python串行运算、并行运算、多线程、多进程对比实验
  10. 算法:螺旋矩阵 ||