首页
首页
文章目录
  1. 简介
  2. 安装zabbix客户端
  3. 编写mysql信息获取脚本
  4. 修改zabbix的配置文件
  5. 使用zabbix_get测试
  6. 添加监控

zabbix 监控Centos7下的mysql方法

简介

针对centos7下面的mysql进行监控

系统 mysql zabbix
centos 7.* mysql 5.7 zabbix 3.4.12

安装zabbix客户端

如果你的版本号和我使用的不同,请在http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/ 选择自己的版本(url中的3.4也是版本)

1
2
3
wget http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-2.el7.noarch.rpm
rpm -ivh zabbix-release-3.4-2.el7.noarch.rpm
yum install -y zabbix-agent

编写mysql信息获取脚本

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
MYSQL_PWD='你的root密码'
ARGS=1
if [ $# -ne "$ARGS" ];then
echo "Please input onearguement:"
fi
case $1 in
Uptime)
result=` mysqladmin -uroot -p${MYSQL_PWD} status 2>/dev/null|awk '{print $2}'`
echo $result
;;
Questions)
result=`mysqladmin -uroot -p${MYSQL_PWD} status 2>/dev/null|awk '{print $6}'`
echo $result
;;
Com_update)
result=`mysqladmin -uroot -p${MYSQL_PWD} extended-status 2>/dev/null|grep -w "Com_update"|awk '{print $4}'`
echo $result
;;
Slow_queries)
result=`mysqladmin -uroot -p${MYSQL_PWD} extended-status 2>/dev/null|grep -w "Slow_queries"|awk '{print $4}'`
echo $result
;;
Com_select)
result=`mysqladmin -uroot -p${MYSQL_PWD} extended-status 2>/dev/null|grep -w "Com_select"|awk '{print $4}'`
echo $result
;;
Com_rollback)
result=`mysqladmin -uroot -p${MYSQL_PWD} extended-status 2>/dev/null|grep -w "Com_rollback"|awk '{print $4}'`
echo $result
;;
Com_insert)
result=`mysqladmin -uroot -p${MYSQL_PWD} extended-status 2>/dev/null|grep -w "Com_insert"|awk '{print $4}'`
echo $result
;;
Com_delete)
result=`mysqladmin -uroot -p${MYSQL_PWD} extended-status 2>/dev/null|grep -w "Com_delete"|awk '{print $4}'`
echo $result
;;
Com_commit)
result=`mysqladmin -uroot -p${MYSQL_PWD} extended-status 2>/dev/null|grep -w "Com_commit"|awk '{print $4}'`
echo $result
;;
Bytes_sent)
result=`mysqladmin -uroot -p${MYSQL_PWD} extended-status 2>/dev/null|grep -w "Bytes_sent"|awk '{print $4}'`
echo $result
;;
Bytes_received)
result=`mysqladmin -uroot -p${MYSQL_PWD} extended-status 2>/dev/null|grep -w "Bytes_received"|awk '{print $4}'`
echo $result
;;
Com_begin)
result=`mysqladmin -uroot -p${MYSQL_PWD} extended-status 2>/dev/null|grep -w "Com_begin"|awk '{print $4}'`
echo $result
;;
*)
echo "Usage:$0(Uptime|Questions|Com_update|Slow_queries|Com_select|Com_rollback|Com_insert|Com_delete|Com_commit|Bytes_sent|Bytes_received|Com_begin)"
;;
esac

我这里将上面的内容保存到了/etc/zabbix/mysql_shell/dz.sh,并给予运行权限

1
chmod a+x /etc/zabbix/mysql_shell/dz.sh

修改zabbix的配置文件

1、修改zabbix_agentd.conf

1
Include=/etc/zabbix/zabbix_agentd.d/*.conf

去掉这行前面的注释
zabbix_mysql_01

2、进入zabbix_agentd.d目录下编辑userparameter_mysql.conf文件

userparameter_mysql.conf文件最后效果

1
2
3
UserParameter=mysql.ping,mysqladmin -uroot -p密码  ping | grep -c alive
UserParameter=mysql.version,mysql -V
UserParameter=mysql.status[*],/etc/zabbix/mysql_shell/dz.sh $1

重启zabbix-agentd服务

使用zabbix_get测试

在zabbix服务端安装zabbix_get 下载地址: http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/

执行:
zabbix_mysql_02

确认有数据返回,表示正确。

添加监控

配置—–主机—–选择mysql主机——模板—–添加“Template DB MySQL” 模板—–更新

最终效果图
zabbix_mysql_03

以上

End!

支持一下
扫一扫,我会更有动力更新
  • 微信扫一扫
  • 支付宝扫一扫