当我在 Zabbix 中将 MySQL 模板添加到主机时,它总是报告 MySQL 服务已关闭的问题,但事实并非如此。
我为一个主机(Zabbix 服务器本身,它运行自己的 MySQL 服务器)创建了一个新项目,以测试与 MySQL 的 ODBC 连接。这样就成功了。下一步是解决“MySQL 已关闭”的问题。
- 打开主机配置(本例中为 Zabbix 服务器/localhost)
- 未清项目
- 单击其中一个 MySQL 项目,例如:MySQL 慢查询
- 描述字段显示:
It requires user parameter mysql.status[*], which is defined in userparameter_mysql.conf.
这对于所有 MySQL 项目都是相同的。
我打开 /etc/zabbix/zabbix_agentd.d/userparameter_mysql.conf,那里显示:
# For all the following commands HOME should be set to the directory that has .my.cnf file with password information.
# Flexible parameter to grab global variables. On the frontend side, use keys like mysql.status[Com_insert].
# Key syntax is mysql.status[variable].
UserParameter=mysql.status[*],echo "show global status where Variable_name='$1';" | HOME=/var/lib/zabbix mysql -N | awk '{print $$2}'
此 Amazon Linux 系统上没有.my.cnf
任何文件,但有/etc/my.cnf
。那么 HOME 路径是什么?或者它/var/lib/mysql
代替了/var/lib/zabbix
(不存在)?我试过了,但不起作用。
答案1
你需要创造.my.cnf
Zabbix 主目录中包含 Zabbix MySQL 凭证的文件。
[client]
user=zabbix
password=Whatever
您应该已经为 Zabbix 创建一个用户。
GRANT USAGE ON *.* TO 'zabbix'@'localhost' IDENTIFIED BY 'Whatever';