Orabbix 是专为 Zabbix 设计的 Oracle 监控插件,支持多实例、性能指标采集、预定义模板与图形。本文记录服务端部署、Oracle 客户端授权、模板导入、主机关联全流程。

tar zxf jdk-8u51-linux-x64.tar.gz -C /usr/local/ echo 'export JAVA_HOME=/usr/local/jdk1.8.0_51 export CLASSPATH=$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar export PATH=$JAVA_HOME/bin:$PATH' >> /etc/profile source /etc/profile
mkdir /opt/orabbix cp orabbix-1.2.3.zip /opt/orabbix/ cd /opt/orabbix && unzip orabbix-1.2.3.zip
conf/config.propsZabbixServerList=ZabbixServer ZabbixServer.Address=10.0.6.102 ZabbixServer.Port=10051 OrabbixDaemon.PidFile=./logs/orabbix.pid OrabbixDaemon.Sleep=300 OrabbixDaemon.MaxThreadNumber=100 DatabaseList=PROM DatabaseList.MaxActive=10 DatabaseList.MaxWait=100 DatabaseList.MaxIdle=1 PROM.Url=jdbc:oracle:thin:@10.1.1.84:1521:prom PROM.User=ZABBIX PROM.Password=zabbix PROM.MaxActive=10 PROM.MaxWait=100 PROM.MaxIdle=1 PROM.QueryListFile=./conf/query.props
关键点:DatabaseList 值(PROM)必须与 Zabbix 主机名完全一致。
cp init.d/orabbix /etc/init.d/ chmod 755 /etc/init.d/orabbix chkconfig orabbix on
CREATE USER ZABBIX IDENTIFIED BY "zabbix" DEFAULT TABLESPACE SYSTEM TEMPORARY TABLESPACE TEMP PROFILE DEFAULT ACCOUNT UNLOCK; GRANT CONNECT, RESOURCE TO ZABBIX; ALTER USER ZABBIX DEFAULT ROLE ALL; GRANT SELECT ANY TABLE TO ZABBIX; GRANT CREATE SESSION TO ZABBIX; GRANT SELECT ANY DICTIONARY TO ZABBIX; GRANT UNLIMITED TABLESPACE TO ZABBIX;
EXEC dbms_network_acl_admin.create_acl(acl => 'resolve.xml',
description => 'resolve acl', principal => 'ZABBIX',
is_grant => TRUE, privilege => 'resolve');
EXEC dbms_network_acl_admin.assign_acl(acl => 'resolve.xml', host => '*');
COMMIT;
service orabbix start → tail -f logs/orabbix.log 确认 Connected as ZABBIXConfiguration → Templates → Import 选择 template/Orabbix_export_full.xmlConfiguration → Hosts → Create host
Template_OracleMonitoring → Graphs 或加入 Screens

| 现象 | 排查 |
|---|---|
| Orabbix 启动报错 ORA-12541 | 检查 Oracle 监听状态、防火墙、tnsnames.ora |
| Zabbix 无数据 | 确认 Host name 与 DatabaseList 完全一致;检查 QueryListFile 路径 |
| 权限不足 ORA-01031 | 补充 SELECT ANY DICTIONARY、ACL 配置 |