[zabbix] zabbix检测mysql主从状态
环境说明:
zabbix-proxy 172.16.2.95(zabbix-server同理)
zabbix-agent111 172.16.2.111 mysql从机
1.mysql从机添加用户权限,避开root权限
mysql> grant replication client on *.* to 'zabbix'@'localhost' identified by 'password';
2.将用户名密码写入/var/lib/zabbix/.my.cnf,不建议写在/etc/my.cnf,各系统用户都可直接调用该配置文件。至于为何是在/var/lib/zabbix底下,因为zabbix-agent配置文件/etc/zabbix/zabbix_agentd.d/userparameter_mysql.conf中定义了zabbix的HOME路径在该目录HOME=/var/lib/zabbix。
[root@zabbix-agent111 ~]# cat /var/lib/zabbix/.my.cnf
[client]
default-character-set = utf8
user=zabbix
password=password [mysqladmin]
user=zabbix
password=password
3.往zabbix-agent机器上添加UserParameter(版本:zabbix-agent-3.4.10-1.el7.x86_64)
[root@zabbix-agent111 ~]# cat /etc/zabbix/zabbix_agentd.d/userparameter_mysql.conf
...省略
UserParameter=mysql.ping,HOME=/var/lib/zabbix mysqladmin ping | grep -c alive
UserParameter=mysql.version,mysql -V
UserParameter=mysql.slave.status1,echo "show slave status\G" | HOME=/var/lib/zabbix mysql | grep Running | grep -c Yes
UserParameter=mysql.slave.status2,echo "show slave status\G" | HOME=/var/lib/zabbix mysql | awk '/Seconds_Behind_Master/{print $2}'
重启zabbix-agent
[root@zabbix-agent111 ~]# systemctl restart zabbix-agent
4.确认zabbix-agent机器上zabbix用户可以直接执行mysql命令,如果该机器上的mysql安装在/usr/local/mysql,要么在UserParameter指定mysql完整路径,要么在机器给mysql软链接到/usr/local/bin等PATH环境变量中
[root@zabbix-agent111 ~]# which mysql
/usr/local/bin/mysql
[root@zabbix-agent111 ~]# ll /usr/local/bin/mysql
lrwxrwxrwx 1 root root 26 Sep 6 14:04 /usr/local/bin/mysql -> /usr/local/mysql/bin/mysql
5.zabbix-proxy机器上确认可以获取两个新值
[root@zabbix-proxy ~]# zabbix_get -s 172.16.2.111 -k 'mysql.slave.status1'
2
[root@zabbix-proxy ~]# zabbix_get -s 172.16.2.111 -k 'mysql.slave.status2'
0
6.登录zabbix web控制台添加监控项、触发器,这里我选择将监控项和触发器添加到默认的模板“Template DB MySQL”

添加一个监控项,未尾不启用是出于模板“Template DB MySQL”在我环境中会应用到多台mysql服务器,如mysql主、无主从的mysql等;它们不需要获取主从状态,默认不启用,待模板链接到主机后,有需要检测主从状态的主机再单独点击启用。

未尾不启用,理由同上

添加触发器,show slave status\G的结果中Running的Yes数量不等于2个或者mysql.slave.status2最后两次结果最小的值大于60,就认为主从状态异常。
未尾同样不启用,理由同上
{mysql.slave.status1.last(0)}<>2
最后一次“Yes的数量”不等于2,触发
or {mysql.slave.status2.min(#2)}>60
或者最后两次“Seconds_Behind_Master”中的最小值大于60,触发

[zabbix] zabbix检测mysql主从状态的更多相关文章
- zabbix-2.4.8-1添加MySQL主从状态监控
1.安装zabbix-agentyum -y install zabbix-2.4.8-1.el6.x86_64.rpm zabbix-agent-2.4.8-1.el6.x86_64.rpm 安装以 ...
- zabbix--监控MySQL主从状态
zabbix监控MySQL主从状态 搭建MySQL主从后,很多时候不知道从的状态是否ok,有时候出现异常不能及时知道,这里通过shell脚本结合zabbix实现监控并告警 一般情况下,在MySQL的从 ...
- ZABBIX监控mysql主从状态
模板如下 <zabbix_export> <version>3.4</version> <date>2018-11-30T08:28:28Z</d ...
- 毕业设计之zabbix 之mysql主从状态的监控
建立监控脚本在自定义的位置 /usr/local/zabbix/script/ [root@mysql.quan.bbs script]$pwd /usr/local/zabbix/script [r ...
- 带你了解zabbix如何监控mysql主从到报警触发
本章博客我们一起来聊一聊如何监控mysql数据库主从状态? 思路梳理: 1)首先我们都知道,判断Mysql主从是否正常,是通过主从上面的SQL和IO线程都为yes状态判断(通过awk取值,grep过滤 ...
- 检测MySQL主从备份是否运行
通过查看 slave 状态,确保 Slave_IO_Running: Yes Slave_SQL_Running: Yes #!/bin/bash#Author:Darius-Dmysql -uro ...
- 写一个简单脚本检测mysql主从是否正常
这个脚本是在从服务器上执行的 [root@bogon ~]# cat a.sh #!/bin/bash #下面这行目的在于检测mysql端口是否开启,如果没有开启,那说明mysql服务都没有开启,直接 ...
- 检查Mysql主从状态
.检查MySQL主从同步状态 #!/bin/bash USER=bak PASSWD=123456 IO_SQL_STATUS=$(mysql -u$USER -p$PASSWD -e show s ...
- nagios监控mysql主从状态
看了网上很多mysql主从监控的,大部分都是shell的,就算是python的,也是在python下跑shell语句.我写了一个python的监控脚本,用到了mysqldb这个包.脚本如下: [roo ...
随机推荐
- Sequelize-nodejs-11-Raw queries
Raw queries原始查询 就是使用了原始的查询语句,如UPDATE users SET y = 42 WHERE x = 12 As there are often use cases in w ...
- 【转】Python数据处理(四舍五入、除法部分)
转自:https://www.cnblogs.com/junyiningyuan/p/5338378.html 关于除法 传统除法 对两个整数进行除的运算,同时结果会舍去小数部分,返回一个整数.但如果 ...
- MySQL(一)索引的创建和删除
索引是存储引擎用于快速找到记录的一种数据结构,这是索引的基本功能. 索引对于良好的性能非常关键.尤其是当表中的数据量越来越大时,索引对性能的影响愈发重要.接下来将讲述如何创建.查看和删除索引. 索引分 ...
- C++中关于配置文件的问题
眼下本人考虑到部门配置文件较多,所以想写个配置文件检測程序. 眼下大致的思路例如以下三部分; 1, 读取配置文件的内容(*.ini). 查找配置文件,代码例如以下 void CDataBaseDlg: ...
- 【LeetCode67】 Add Binary
题目描述: 解题思路: 此题的思路简单,下面的代码用StringBuilder更加简单,注意最后的结果要反转过来.[LeetCode415]Add Strings的解法和本题一模一样. java代码: ...
- bootstrap-treeview使用
1.数据 var tree = [{ text: "车型A", nodes: [{ text: "车系1", }, { text: "车系2" ...
- helpera64开发板下制作ubuntu rootfs镜像
下一篇路径:https://www.cnblogs.com/jizizh/p/10499448.html 环境: HelperA64开发板 Linux3.10内核 时间:2019.02.14 目标:定 ...
- PTA-BinarySearchTree BasicOperation
/* 二叉查找树 基本操作 */#include <stdio.h> #include <stdlib.h> typedef int ElementType; typedef ...
- 【转载】ArcBall二维控制三维旋转
原文:http://oviliazhang.diandian.com/post/2012-05-19/40027878859 由于目前大多的显示器是二维的,要控制三维物体的旋转就显得不那么直接了.Ar ...
- 【转载】COM 组件设计与应用(三)——数据类型
原文:http://vckbase.com/index.php/wv/1206.html COM 组件设计与应用 系列文章:http://vckbase.com/index.php/piwz?& ...