世界上只有一种英雄主义,就是看清生活的真相之后依然热爱生活!

Zabbix4.0.10 监控 MySQL 数据库状态和指标

2019-07-10
174次查阅
2019/7/10

在已完成zabbix安装部署的基础上操作,安装部署:http://1987.name/744.html

zabbix_agent端

1、首先在 MySQL 服务器创建一个用户 zabbix 监控的数据库账户

GRANT ALL ON . TO 'zabbix'@'localhost' IDENTIFIED BY '123456';
FLUSH PRIVILEGES;

然后在 zabbix_agentd 服务目录下创建 my.cnf

vim /usr/local/zabbix/etc/my.cnf
[client]
user       = zabbix
password   = 123456

建立MySQL可执行文件的软连接,已建立或者已经创建环境变量可忽略:

ln -s /usr/local/mysql/bin/mysql /usr/local/bin/
ln -s /usr/local/mysql/bin/mysqladmin /usr/local/bin/

2、编辑 userparameter_mysql.conf 配置文件

vim /usr/local/zabbix/etc/zabbix_agentd.conf.d/userparameter_mysql.conf
UserParameter=mysql.status[*],echo "show global status where Variable_name='$1';" | mysql --defaults-file=/usr/local/zabbix/etc/my.cnf -N | awk '{print $$2}'
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\"");" | mysql --defaults-file=/usr/local/zabbix/etc/my.cnf -N'
UserParameter=mysql.ping,mysqladmin --defaults-file=/usr/local/zabbix/etc/my.cnf ping | grep -c alive
UserParameter=mysql.version,mysql --defaults-file=/usr/local/zabbix/etc/my.cnf -V

配置好之后重启zabbix客户端:

/etc/init.d/zabbix_agentd restart

zabbix_server 端

验证是否已经可以获取到数据:

zabbix_get -s 192.168.0.32 -p 10050 -k 'mysql.ping'
1

最后在zabbix服务器网页控制台配置主机使用Template DB MySQL模板即可:

稍后即可查看数据图形:

评论

想说点什么?