环境说明:Linux版本:AlmaLinux9.1 Zabbix版本:6.0
一、服务器端配置
- 安装
unixODBC
和unixODBC-devel
,这两个包提供了访问ODBC数据库的能力,包括MySQL。
dnf -y install unixODBC unixODBC-devel
- 安装
mariadb-connector-odbc
,这个包提供了MariaDB(MySQL的一个分支)的ODBC驱动。
dnf -y install mariadb-connector-odbc
- 使用
odbcinst -j
命令显示ODBC环境的信息,包括ODBC驱动的位置、系统数据源的位置等。
odbcinst -j
- 在
/etc/odbc.ini
文件中定义ODBC数据源,用来连接MySQL数据库。
在此之前需要登录到你想要被监控的MySQL数据库,创建一个新的用户,这个用户将被Zabbix用来监控数据库。授予新用户需要的权限。这些权限允许用户查看数据库的状态和运行的进程,这是监控数据库所需要的。
CREATE USER 'zbx_monitor'@'%' IDENTIFIED BY '<password>';
GRANT SELECT, REPLICATION CLIENT, PROCESS, SHOW DATABASES, SHOW VIEW ON *.* TO 'zbx_monitor'@'%';
配置ODBC数据源
vi /etc/odbc.ini
在文件中加入以下内容:
[test]
Description = MySQL测试数据库
Driver = MariaDB
Server = 127.0.0.1
User = zbx_monitor
Password =XXXXXXX
Port = 3306
- 在
/etc/odbcinst.ini
文件中已经定义了MariaDB驱动的信息,这个驱动被上一步的数据源使用。通过cat /etc/odbcinst.ini命令可以查看对应的驱动信息
cat /etc/odbcinst.ini
[MariaDB]
Description = ODBC for MariaDB
Driver = /usr/lib/libmaodbc.so
Driver64 = /usr/lib64/libmaodbc.so
FileUsage = 1
- 最后,使用
isql
命令测试你的配置是否正确。
isql test
看到类似以下的输出,表示已经成功地连接到MySQL数据库:
+---------------------------------------+
| Connected! |
| |
| sql-statement |
| help [tablename] |
| quit |
| |
+---------------------------------------+
SQL>
以上是在服务器端的操作,接下来是Zabbix前端的配置:
二、Zabbix前端配置
1.创建主机,选择模板,添加到群组
2.填写相应的宏信息
需要配置以下这3个宏变量的值
{$MYSQL.DSN}
{$MYSQL.USER}
{$MYSQL.PASSWORD}
![在这里插入图片描述](https://img-blog.csdnimg.cn/c79839ab8f524243a13b6badd605b58a.png
3.保存后打开主机的监控项进行验证
可以看到有值显示,那说明就配置成功了