1,mysql down了,zabbix没有报警

去查看后台mysql进程,确实没有mysql进程在运行着:

[root@db_m2_slave2 ~]# ps -eaf|grep mysql

root    62585 62087  0 19:48 pts/1    00:00:00 grep mysql

[root@db_m2_slave2 ~]#

那么,mysql 关机了,但是zabbix,没有报警出来,原因在哪里?

2,找到zabbix-agent分析

查看agent启动的配置文件路径:

[root@db_m2_slave2 zabbix]# ps -eaf|grepzabbix

root     3113 43637  0 20:28 pts/0    00:00:00 grep zabbix

zabbix  52503     1  0 May17 ?        00:00:00 /usr/sbin/zabbix_agentd -c/etc/zabbix/zabbix_agentd.conf

zabbix  52504 52503  0 May17 ?        00:03:10 /usr/sbin/zabbix_agentd:collector [idle 1 sec]

zabbix  52505 52503  0 May17 ?        00:03:31 /usr/sbin/zabbix_agentd:listener #1 [waiting for connection]

zabbix  52506 52503  0 May17 ?        00:03:29 /usr/sbin/zabbix_agentd:listener #2 [waiting for connection]

zabbix  52507 52503  0 May17 ?        00:03:28 /usr/sbin/zabbix_agentd:listener #3 [waiting for connection]

zabbix  52508 52503  0 May17 ?        00:00:16 /usr/sbin/zabbix_agentd: activechecks #1 [idle 1 sec]

[root@db_m2_slave2 zabbix]#

查看zabbix-agent启动方式,知道/etc/zabbix/zabbix_agentd.conf是配置文件,去查看里面的mysql.ping的参数设置:

# vim /etc/zabbix/zabbix_agentd.conf

UserParameter=mysql.ping,mysqladmin  -P3317 -h127.0.0.1  ping | grep -c alive

使用mysqladmin组件的一连串命令并且检索alive来获取结果集的,获取到就返回1表示mysql服务是开启的获取不到就返回0表示mysql服务关闭了,但是实际上呢?能返回1但是返回不了0,因为mysqladmin命令会先报错信息出来,这样zabbix-server调用的时候返回的不是纯粹数字,而是字符串+熟悉,zabbix-server的触发器里面识别不了,mysqladmin命令信息如下:

[root@db_m2_slave2 zabbix]# mysqladmin  -P3317 -h127.0.0.1  ping | grep -c alive

mysqladmin: connect to server at'127.0.0.1' failed

error: 'Can't connect to MySQL server on'127.0.0.1' (111)'

Check that mysqld is running on 127.0.0.1and that the port is 3317.

You can check this by doing 'telnet127.0.0.1 3317'

0

[root@db_m2_slave2 zabbix]#

再看zabbix自带的mysql模版的mysql is down的触发条件是:{db_m2_slave2:mysql.ping.last(0)}=0,当调用mysql.ping的最后一个值是0的时候,触发报警,如下图031.png所示:

因此可以知道mysqladmin在mysql服务down的时候,返回的字符串报警+数字0,完全触发不了zabbix的报警条件了,是需要考虑其它的方式来判断了。

3,telnet监听mysql端口3317

Mysqladmin的组件直接访问mysql服务行不通,因为mysql服务已经down了,那么可以采用监听mysql服务启动的端口来试试看,监听mysql的端口3317,

[root@db_m2_slave2 zabbix]# telnet127.0.0.1 3317

Trying 127.0.0.1...

telnet: connect to address 127.0.0.1:Connection refused

[root@db_m2_slave2 zabbix]#

[root@hch_test_121_12 php-5.6.20]#/usr/local/zabbix/bin/zabbix_get -s 192.168.3.73 -p10050 -k mysql.ping

(Not all processes could be identified,non-owned process info

willnot be shown, you would have to be root to see it all.)

0

[root@hch_test_121_12 php-5.6.20]#

看到telnet这个也不行,因为返回中有报警提示信息字符串而不是纯粹的数字0。

4,netstat监听mysql端口3317

考虑下准备用netstat,先试下命令行:

[root@db_m2_slave2 zabbix]# netstat -ntpl|grep 3317 |grep mysql |wc |awk '{print $1}'

0

[root@db_m2_slave2 zabbix]#

Ok,没有告警信息存在,可以使用这个命令

之后修改agent的配置文件vim /etc/zabbix/zabbix_agentd.conf:

UserParameter=mysql.ping,netstat -ntpl|grep 3317 |grep mysql |wc |awk '{print $1}'

修改完,重启agentd服务

PS:执行chmod +s/bin/netstat防止zabbix-server远程调用失效。

去zabbix-server端check,能获取纯粹的数字0,证明此方法OK有效。

[root@hch_test_121_12 php-5.6.20]#/usr/local/zabbix/bin/zabbix_get -s 192.168.3.73 -p10050 -k mysql.ping

0

[root@hch_test_121_12 php-5.6.20]#

之后就收到了zabbix的报警邮件和短信了。

zabbix设置mysql登陆免报警_zabbix3.0.2 监控mysql服务down的时候不触发报警的问题修复...相关推荐

  1. zabbix3.0.4监控mysql主从同步

    zabbix3.0.4监控mysql主从同步 1.监控mysql主从同步原理: 执行一个命令 mysql -u zabbix -pzabbix -e 'show slave status\G' 我们在 ...

  2. prometheus监控mysql慢查询_使用Grafana+Prometheus监控mysql服务性能

    prometheus(也叫普罗米修斯)官网: grafana官网: 特征 普罗米修斯的主要特点是: 具有由度量名称和键/值对标识的时间序列数据的 一个 来利用这一维度 不依赖分布式存储; 单个服务器节 ...

  3. zabbix3.0.2 监控mysql服务down的时候不触发报警的问题修复

    1,mysql down了,zabbix没有报警 去查看后台mysql进程,确实没有mysql进程在运行着: [root@db_m2_slave2 ~]# ps -eaf|grep mysql roo ...

  4. 商城项目02_环境搭建、安装VAGRANT、DOCKER、MYSQL、REDIS、从0搭建各个微服务项目、数据库初始化、安装NGINX

    文章目录 ①. virtualBox - 管理虚拟机 ②. vagrant - 安装虚拟机 ③. 虚拟机安装 - docker ④. docker上安装mysql ⑤. docker上安装redis ...

  5. vc6.0 点击鼠标获取mysql数据库所在行_VC6.0中对MySQL数据库的操作

    VC6.0中对MySQL数据库的操作 1.在mysql目录下找到名字为libmySQL.dll和libmySQL.lib 的文件拷贝到当前工程目录下,并在"工程->设置->连接& ...

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

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

  7. vc6.0 点击鼠标获取mysql数据库所在行_VC6.0连接到mysql数据库

    (1)打开VC6.0 工具栏Tools菜单下的Options选项,在Directories的标签页中右边的"Show directories for:"下拉列表中选中"I ...

  8. zabbix2.4 mysql模板_zabbix自带的模板监控mysql

    zabbix官方支持监控MySQL,但直接使用默认的模板是不可用的,还需要经过额外的设置才可以使用.如果只需要对mysql数据库做简单的监控,zabbix自带的模板完全能够满足要求:如果有更高的需求那 ...

  9. mysql中%3c%3e和=_Grafana+Prometheus 监控 MySQL

    架构图 环境 IP 环境 需装软件 192.168.0.237 mysql-5.7.20 node_exporter-0.15.2.linux-amd64.tar.gz mysqld_exporter ...

最新文章

  1. JS栈结构的简单封装
  2. 大数据产品开发流程规范_大数据技术思想入门(三):分布式文件存储的流程
  3. 7-1 作业调度算法--先来先服务
  4. 广告影响网站打开速度解决方案
  5. iframe去掉滚动条
  6. 三个数比较大小函数调用c语言,C语言函数的调用——比较两个数的大小
  7. html与css基础教程:CSS构造块
  8. 【软件设计师中级】设计模式之原型模式学习笔记(c++)
  9. 哈工大计算机保研面试专业课问题,[转载]哈工大保研面试
  10. 网络安全-文件上传漏洞的原理、攻击与防御
  11. 有才而性缓,有智而气和
  12. 小武学fpgastep7
  13. 微信调用扫一扫功能实现
  14. 机器学习复习:线性回归1
  15. DIY电工维修如何拆卸和安装开关面板插座
  16. Linux kernel的中断子系统之(二):IRQ Domain介绍
  17. SQL Server 函数
  18. 《Java 2 实用教程》读书笔记(三)
  19. 销量不敌理想、小鹏,蔚来掉队了?
  20. windows系统下的文件夹链接功能mklink/linkd

热门文章

  1. 数据库 索引、存储、引擎这几个的优缺点
  2. java反射技术_java反射技术,逆向开发必备技能
  3. 共阳数码管段码表_C51编程7数码管显示原理
  4. 快速上手Tomcat
  5. 使用ExchangeRate-API查询免费可用的汇率数据
  6. 2017数学建模b题回顾_12月热门文章和2017年回顾
  7. git下载及安装向导如何配置
  8. 浏览器推送 comet
  9. 秒速五厘米男主php,秒速五厘米最后男主从事的是什么工作?
  10. Linux手动释放缓存的方法