[实战]Zabbix 5.2.2监控Oracle数据库BY ODBC

距离Zabbix 5.2.2内置的Oracle by ODBC的模版已经发布已有些许时日,一直忙于各种Template的紧张制作与兼容性适配工作中,周末有点时间,写一下关于Oracle by ODBC适配中遇到的一些坑,总结了以下安装与配置方法,亲自试验有效,如果你对我的文章感兴趣,请加入我们的QQ群:Zabbix研究院(QQ群:1107902496)

目录

第一步:安装ODBC

第二步:安装Oracle Client安装包文件如下:

第三步:配置SQLPLUS连接扩展

第四步:环境变量配置

第五步:配置需要的类库

第六步:添加ORACLE驱动

第七步:添加Oracle数据源

第八步:ISQL测试

第九步:SQLPLUS测试

第十步:Zabbix配置

报错处理:

第一步:安装ODBC
 

yum -y install unixODBC unixODBC-devel

第二步:安装Oracle Client安装包文件如下:

oracle-instantclient18.5-basic-18.5.0.0.0-3.x86_64.rpm
oracle-instantclient18.5-devel-18.5.0.0.0-3.x86_64.rpm
oracle-instantclient18.5-odbc-18.5.0.0.0-3.x86_64.rpm
oracle-instantclient18.5-sqlplus-18.5.0.0.0-3.x86_64.rpm
  • 进入安装目录后执行:

yum localinstall oracle-instantclient18.5-*
  • 安装后的位置如下:

/usr/share/oracle/18.5/client64
/usr/include/oracle/18.5/client64
/usr/lib/oracle/18.5/client64
  • 创建admin目录;

mkdir /usr/lib/oracle/18.5/client64/network/admin -p

第三步:配置SQLPLUS连接扩展

vi /usr/lib/oracle/18.5/client64/network/admin/tnsnames.ora

test_oracle=
   (DESCRIPTION =
     (ADDRESS = (PROTOCOL = TCP)(HOST = IP)(PORT = PORT))
     (CONNECT_DATA =
        (SERVER = DEDICATED)
        (SERVICE_NAME = 数据库SID)
     )
    )

第四步:环境变量配置

vi /etc/profile

export ORACLE_HOME=/usr/lib/oracle/18.5/client64
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib64:$LD_LIBRARY_PATH
export TNS_ADMIN=$ORACLE_HOME/network/admin
export PATH=$PATH:$ORACLE_HOME/bin:$HOME/binsource /etc/profile

source /etc/profile

第五步:配置需要的类库

chmod +x /usr/lib/oracle/18.5/client64/lib/libsqora.so.18.1
cd /usr/lib64/
ln -s libodbcinst.so.2.0.0  libodbcinst.so.1

第六步:添加ORACLE驱动

# vim  /etc/odbcinst.ini

[oracle]
Description     = Oracle ODBC driver for Oracle 11g
Driver          = /usr/lib/oracle/18.5/client64/lib/libsqora.so.18.1

第七步:添加Oracle数据源

# vim  /etc/odbc.ini 
[test]
Driver= oracle
ServerName= ip:port/TESTDB
UserID= 用户名
Password= 密码

第八步:ISQL测试

isql -v test 
检测是否可连接及中间如遇到报错的错误信息
isql test
+---------------------------------------+
| Connected!                                                |
|                                                                     |
| sql-statement                                            |
| help [tablename]                                       |
| quit                                                             | 
|                                                                     |
+---------------------------------------+

第九步:SQLPLUS测试

# sqlplus 用户名/密码@tnsnames.ora中配置的连接名称

SQL*Plus: Release 11.2.0.3.0 Production on Wed Jul 19 11:39:18 2017

Copyright (c) 1982, 2011, Oracle.  All rights reserved.


Connected to:

Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options

SQL> exit

第十步:Zabbix配置

  • 配置宏值如图:

报错处理:

以nologin用户启动的监控系统,配置上监控项之后,报错

解决方案:

尝试1:

echo "/usr/lib/oracle/18.5/client64/lib" | sudo tee/etc/ld.so.conf.d/oracle-client-18.5.conf
sudo ldconfig
sudu ldconfig -v

尝试2:如果尝试1执行后页面依然提示“......file not found”,可以试试下面的操作,操作完记得重启zabbix server服务。

需要查找zabbix服务的环境变量文件 没有则新建 默认情况在 /etc/sysconfig 下 server 新建zabbix-server proxy新建zabbix-proxy
ORACLE_HOME=/usr/lib/oracle/18.5/client64
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib64:$LD_LIBRARY_PATH
TNS_ADMIN=$ORACLE_HOME/network/admin
PATH=$PATH:$ORACLE_HOME/bin:$HOME/bin
export ORACLE_HOME
export LD_LIBRARY_PATH
export TNS_ADMIN
export PATH

 

  • 6
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 8
    评论
要在Zabbix监控Oracle数据库中的表数据,可以使用Zabbix数据库监控功能结合Oracle的特定监控方法。以下是一个简单的步骤指南: 1. 确保已经安装和配置了Zabbix服务器和Zabbix代理。 2. 在Zabbix服务器上创建一个新的模板,用于监控Oracle数据库。在模板中,可以定义触发器、图表和报警等。 3. 在Zabbix服务器上创建一个新的主机,对应于要监控Oracle数据库实例。为主机配置IP地址和其他必要的参数。 4. 在Zabbix代理配置文件中添加数据库监控参数。编辑zabbix_agentd.conf文件,添加以下内容: ``` UserParameter=oracle.tablespace.discovery,/path/to/script UserParameter=oracle.tablespace.size[*],/path/to/script $1 $2 ``` 5. 创建一个用于获取表数据的脚本。可以使用Python、Shell脚本或其他适当的工具来编写脚本。该脚本应该能够连接到Oracle数据库并获取表数据。 6. 将脚本放置在Zabbix代理所在主机上,并确保脚本具有执行权限。 7. 在Zabbix服务器上导入模板,并将其关联到Oracle数据库的主机。 8. 在触发器中定义阈值和触发条件,以便在表数据达到特定阈值时触发警报。 9. 配置图表以显示表数据的趋势和变化。 10. 测试监控功能,确保Zabbix能够成功获取和显示表数据,并在需要时触发警报。 请注意,上述步骤只是一个简单的指南,具体的配置和实施可能因系统环境和要求而有所不同。建议参考ZabbixOracle的官方文档以获取更详细的信息和指导。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值