zabbix 4.0 监控 mysql

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

  下面是用zabbix自带的模板监控mysql的步骤。

  环境:zabbix4.0 ubuntu16.04 LTS mysql 5.5

  1、在相关主机中添加mysql监控模板。模板名称:Template DB MySQL。

  2、配置mysql的客户端,创建一个用户来获取mysql的相关数据

# 设置数据库编码
CREATE DATABASE zabbix CHARACTER SET utf8 COLLATE utf8_bin;
# 创建一个新的MySQL数据库zabbix,将存储收集的数据 # 用户名zabbix,密码123456 GRANT ALL PRIVILEGES ON zabbix.* TO zabbix@'%' IDENTIFIED BY '123456'; # 刷新权限 FLUSH PRIVILEGES;

  3、设置完帐户之后在被监控端新建/etc/zabbix/.my.cnf文件,以提供Zabbix Agent访问数据库,内容类似如下:

# vim /etc/zabbix/ .my.cnf

[mysql]
host=localhost
user=zabbix
password=123456
socket=/data/mysql/mysql.sock
[mysqladmin]
host=localhost
user=zabbix
password=123456
socket=/data/mysql/mysql.sock

# mysql.sock文件通过find / -name mysql.sock找出路径

  4.修改agent配置文件

# vi /etc/zabbix/zabbix_agentd.conf

# 修改 server为服务器ip

# 修改hostname为服务器设置的hostname

# 修改serveractive 为服务器ip:port

     5、修改/etc/zabbix/zabbix_agentd.d/userparameter_mysql.conf(没有的话就创建),这个文件用于制定Zabbix Agent如何获取MySQL数据,我们需要将所有的/var/lib/zabbix修改为当前.my.cnf文件的路径/etc/zabbix。设置完 成之后保存并重启Zabbix Agent

# 新建userparameter_mysql.conf文件
vim /etc/zabbix/zabbix_agentd.d/userparameter_mysql.conf
#修改文件后内容如下 UserParameter=mysql.size[*],bash -c 'echo "select sum($(case "$3" in both|"") echo "data_length+index_length";; data|index) echo "$3_length";; free) echo "data_free";; esac)) from information_schema.tables$([[ "$1" = "all" || ! "$1" ]] || echo " where table_schema="$1"")$([[ "$2" = "all" || ! "$2" ]] || echo "and table_name="$2"");" | HOME=/var/lib/zabbix mysql -N' UserParameter=mysql.ping,HOME=/var/lib/zabbix mysqladmin ping | grep -c alive UserParameter=mysql.version,mysql -V # 重启agent服务 systemctl restart zabbix-agent

  6、配置完成

   主机配置界面

   

   最新数据展示界面

  

  

原文地址:https://www.cnblogs.com/daofaziran/p/12559948.html