需要自己添加一些脚本。
参考了网上的一些资料。
首先是配置文件 /usr/local/etc/zabbix_agentd.conf
Include = / usr / local / etc / zabbix_agentd . conf . d /
UnsafeUserParameters = 1
然后添加文件 /usr/local/etc/zabbix_agentd.conf.d/mysql_status.conf
UserParameter = mysql . status [ * ] , / home / zabbix / mysql _ status
$ 1
UserParameter = mysql . ping , / usr / bin / mysqladmin
-- defaults - extra - file = / home / zabbix / mysql . conf
ping | grep
alive | wc
- l
UserParameter = mysql . version , / usr / bin / mysql
-- defaults - extra - file = / home / zabbix / mysql . conf
- e
"select version();" | awk
'END {print}'
然后添加一个数据库配置文件 /home/zabbix/mysql.conf
[ client ]
user = zabbix_agent
password = * * * * * *
host = localhost
数据库里添加好这个用户,其他什么权限都不给 就行。
设置一下权限和归属
chmod
600
/ home / zabbix / mysql . conf
&&
chown
zabbix : zabbix
/ home / zabbix / mysql . conf
然后是这个脚本 /home/zabbix/mysql_status
#!/bin/bash
mysql = / usr / bin / mysql
var = $ 1
[ "${var}" = '' ] && echo "" || $ { mysql } -- defaults - extra - file = / home / zabbix / mysql . conf - e 'show global status' | grep - v Variable_name | grep "\b${var}\b" | awk '{print $2}'
然后给予可执行权限
chmod
+ x
/ home / zabbix / mysql_status
完事,重启 agentd
killall
zabbix_agentd
zabbix_agentd
然后,去 web ui 里配置好。