简介:

如何使用 Zabbix 来监控 Mysql 状态 ?

Zabbix 有自带监控 Mysql 的模板,但是却不能直接使用.. 需要我们根据模板提供的 Key 自己写脚本获取数据

1、查看都有哪些 Key

> Configuration -> Templates

## 在此模板页中,可以看到 Template App MySQL 模板中有 14 个 Items ,我们需要自己写脚本获取这 14 个值

## 分别是:Com_select、Com_insert 、Com_update 、Com_delete 、Com_begin 、Com_commit 、Com_rollback
                 Questions 、Slow_queries 、Bytes_received 、Bytes_sent 、Ping 、Uptime 、Version

2、根据 Key 编写 Shell 脚本

shell > mysql -uroot -p -e "grant usage on *.* to zabbix@localhost identified by 'zabbix_password';" # 建立监控用户

shell > vim /script/mysql_status.sh

#!/bin/bash

User='you_user'
Password='you_password' Mysql='/usr/local/mysql/bin/mysql'
Mysqladmin='/usr/local/mysql/bin/mysqladmin' command(){
$Mysql -u $User -p$Password -e "show global status" | awk '$1 ~ /'"$1"'$/ {print $2}'
} case $ in
Com_select)
command $ ;;
Com_insert)
command $ ;;
Com_update)
command $ ;;
Com_delete)
command $ ;;
Com_begin)
command $ ;;
Com_commit)
command $ ;;
Com_rollback)
command $ ;;
Questions)
command $ ;;
Slow_queries)
command $ ;;
Bytes_received)
command $ ;;
Bytes_sent)
command $ ;;
Uptime)
command $ ;;
Version)
$Mysql -V | awk -F '[ ,]' '{print $6}' ;;
Ping)
$Mysqladmin -u$User -p$Password ping | wc -l ;;
*)
echo "Usage: $0 { Com_select|Com_insert|Com_update|Com_delete|Com_begin|Com_commit|Com_rollback|Questions|Slow_queries|Bytes_received|Bytes_sent|Ping|Uptime|Version }" ;;
esac

## 关于两个命令路径,我使用 `which mysql` 这样的操作没有成功
## 写完先测试一下,能不能获取各 Key 的值

shell > chmod a+x /script/mysql_status.sh

3、添加自定义 key 配置文件

shell > vim /usr/local/zabbix/etc/zabbix_agentd.conf.d/mysql_status.conf
# Mysql_status
UserParameter=mysql.status[*],/script/mysql_status.sh $
UserParameter=mysql.ping,/script/mysql_status.sh Ping
UserParameter=mysql.version,/script/mysql_status.sh Version

## 注意模板里 Key 的取值方式
## 也可以直接加到 /usr/local/zabbix/etc/zabbix_agentd.conf 末尾

shell > vim /usr/local/zabbix/etc/zabbix_agentd.conf

Include=/usr/local/zabbix/etc/zabbix_agentd.conf.d/*.conf

UnsafeUserParameters=1 # 允许自定义 Key

## 添加上面配置

4、重启 Zabbix_agentd

shell > service zabbix_agentd restart

## 注意,上面全部操作都是在被监控端

5、Zabbix 服务端测试能否拿到 Key

shell > /usr/local/zabbix/bin/zabbix_get -s 14.25.97.14 -k mysql.ping

## 可以获取到 key 的值,说明配置没有问题了
## 被监控端记得要开启 10050 端口

6、Zabbix 监控 Mysql 状态

## 接下来把 Zabbix 自带的监控模板链接到主机即可
## 过上一小会,就能看到效果了,version 可能比较时间长点,因为模板里设的时间范围是 3600 秒,ping 会误报一次 Mysql Down ,因为只前是没有值的。

7、为这些监控项添加 Graph

## 自带的模板已经做好了两张图,所以直接使用即可,我这里是空载,所以啥也看不出来..

8、测试 Trigger 告警

## 很遗憾,自带的模板中也已经定义好了 Trigger 告警条件,来瞅瞅

> Configuration -> Templates -> Trigger

Severity :   ## 事件告警级别

Not classified 未知安装等级,灰色

Information 一般信息,亮绿

Warning 警告信息,黄色

Average 一般故障,橙色

High 高级别故障,红色

Disaster 致命故障,亮红

Name :   ## Trigger 名称

Expression :   ## 对触发器状态计算的逻辑正则表达式

Status :        ## 触发器开关

## 怎么设置触发告警条件下次写 ^_^

## 好了,如果 Mysql 处于 down 状态时会触发条件,但是,触发之后呢 ?( 当然是要发送事件通知啦,或执行远程命令 )

9、先把这个放一放,去搞别的!( 监控已经完成,后面的部分放别的地方继续 )

Zabbix 监控 Mysql 状态的更多相关文章

  1. zabbix 监控mysql状态 -Windows

    由于公司爬虫mysql数据库在Windows下面,监控一下: 主要命令:mysqladmin -uroot -proot -h127.0.0.1 ping 2>D:\zabbix\waring. ...

  2. Zabbix监控mysql配置及故障告警配置

    本文主要介绍zabbix监控mysql的配置,包含使用zabbix自带模板监控mysql相关信息及自定义key监控mysql同步情况.同时介绍了触发器的创建及zabbix通过邮件方式告警配置. 一.配 ...

  3. zabbix监控mysql性能

    使用zabbix监控mysql的三种方式 1.只是安装agent 2.启用模板监控 3.启用自定义脚本的模板监控 zabbix中默认有mysql的监控模板.默认已经在zabbix2.2及以上的版本中. ...

  4. zabbix监控mysql以及其他常见

    zabbix监控mysql以及其他常见,监控mysql,也可是使用percona提供的详细的模板,里面的监控项目非常的详细 <template>Template Percona MySQL ...

  5. Zabbix监控,Mysql,Nginx,PHP-FTPM

    一 Zabbix监控Mysql 监控Mysql,Zabbix提供了一个监控模板,所有可以直接使用.或者使用Percona提供的监控模板. 1. 使用自带监控模板 1.1.1 编写监控模板 #!/bin ...

  6. Zabbix 监控MySQL、Apache、Nginx应用监控

    zabbix对第三方应用软件的监控,主要有两个工作难点,一个是编写自定义监控脚本,另一个是在编写模板并导入zabbix web中,编写脚本这个要根据 监控需求定制即可,而编写模板文件有些难度,不过网上 ...

  7. zabbix监控mysql主从同步和延迟

    https://blog.csdn.net/natmazz/article/details/90581490 https://www.cnblogs.com/01-single/p/10602610. ...

  8. 如何用zabbix监控mysql多实例

    agent上起了多了 mysql实例,占用不同的端口,agent 仅在初始状况下,塞入脚本和 键配置,然后重启. 以后维护的时候(mysql端口变动),要做到 不能 动agent,力争 只在 web端 ...

  9. Zabbix监控mysql performance

    介绍 zabbix监控mysql性能,使用zabbix自带的mysql监控模板,可以监控以下内容OPS(增删改查).mysql慢查询数量.mysql请求\响应流量带宽 配置 新建mysql监控用户 G ...

随机推荐

  1. EM算法定义及推导

    EM算法是一种迭代算法,传说中的上帝算法,俗人可望不可及.用以含有隐变量的概率模型参数的极大似然估计,或极大后验概率估计 EM算法定义 输入:观测变量数据X,隐变量数据Z,联合分布\(P(X,Z|\t ...

  2. Bezier曲线原理—动态解释

    公式线性公式给定点P0.P1,线性贝兹曲线只是一条两点之间的直线.且其等同于线性插值.这条线由下式给出: 一阶贝赛尔曲线上的由两个点确定 P0 和P1,当t在0--->1区间上递增时,根据此会得 ...

  3. 每天一个linux命令(权限):【转载】chmod命令

    chmod命令用于改变linux系统文件或目录的访问权限.用它控制文件或目录的访问权限.该命令有两种用法.一种是包含字母和操作符表达式的文字设定法:另一种是包含数字的数字设定法. Linux系统中的每 ...

  4. HttpClient通信

    1.背景 大多数系统功能和代码都是自己写的,自己用,但是在有些情况下,我们可以利用已经存在的系统,完成对自己实现相对很麻烦的功能,这些一般代价相对较大,自己不可能专门写一个系统或者太过很复杂的代码来完 ...

  5. 数字证书在web应用中实现登陆

    1数字证书登录认证的优点 作为企业信息系统的第一道大门,身份认证是确保企业信息资源只能被合法用户所访问的重要保障. 传统的口令认证方式虽然简单,但是由于其易受到窃听.重放等攻击的安全缺陷,使其已无法满 ...

  6. BZOJ4373 算术天才⑨与等差数列 【线段树】*

    BZOJ4373 算术天才⑨与等差数列 Description 算术天才⑨非常喜欢和等差数列玩耍. 有一天,他给了你一个长度为n的序列,其中第i个数为a[i]. 他想考考你,每次他会给出询问l,r,k ...

  7. ubuntu 新手帖

    作为菜鸟,接触ubuntu的时间不长,遇到一些问题,在这总结一下,可能不全不完善,但是希望能有用: 1,ubuntu 12.04的gedit打开中文记事本全是乱码的处理 参考:http://bbs.c ...

  8. simulink使用system test测试 (matlab2014a)

    simulink中有个工具system test,tools->systemtest->launch system test 打开.打开之后界面是这样的 选择insert->test ...

  9. hashids 了解

    用于隐藏真实的id 原理是从数字经过一个加盐(salted)算法产生一个哈希(hash)字符串.这样算法就是通过混淆使结果具有不可预测性,而唯一性依然由数字本身来达成,从而得到(类似 youtube ...

  10. 洛谷3354(IOI2005)河流——“承诺”

    题目:https://www.luogu.org/problemnew/show/P3354 虽说是几个月前曾经讲过的题,但没有题解而自己(花了两个多小时)A了好高兴!!! 这是一个很好的套路:“承诺 ...