操作系统:centos stream 8或者9 、Ubuntu系统

zabbix环境:zabbix6或者7

自己下载 需要有Oracle账号。可以用wget我这个链接直接拉这四个安装包,

如果需自己下载可访问oracle 程序包下载网址:Oracle Instant Client | Oracle, Software. Hardware. Complete.Oracle Linux with Oracle enterprise-class support is the best Linux operating system (OS) for your enterprise computing needs.https://yum.oracle.com/repo/OracleLinux/OL8/oracle/instantclient/x86_64/

目录

一、下载驱动包

二、安装ODBC驱动依赖

 三、配置系统环境变量

四、刷新环境变量并赋权限

五、确认数据库状态

六、在zabbix服务器测试

七、配置odbcinst.ini

八、配置odbc.ini

九、用isql工具测试ODBC连接

十、在zabbix网页上监控Oracle,先创建主机

十一、创建自定义监控项

十二、利用ODBC模板监控Oracle

十三、验证结果


开始教程

一、下载驱动包

ssh登录到你的zabbix服务器,可以用wget我这个链接直接拉这四个安装包,

wget https://yum.oracle.com/repo/OracleLinux/OL8/oracle/instantclient/x86_64/getPackage/oracle-instantclient19.22-odbc-19.22.0.0.0-1.x86_64.rpm
wget https://yum.oracle.com/repo/OracleLinux/OL8/oracle/instantclient/x86_64/getPackage/oracle-instantclient19.22-sqlplus-19.22.0.0.0-1.x86_64.rpm
wget https://yum.oracle.com/repo/OracleLinux/OL8/oracle/instantclient/x86_64/getPackage/oracle-instantclient19.22-basic-19.22.0.0.0-1.x86_64.rpm
wget https://yum.oracle.com/repo/OracleLinux/OL8/oracle/instantclient/x86_64/getPackage/oracle-instantclient19.22-devel-19.22.0.0.0-1.x86_64.rpm

 如果你的服务器下载不动也可以在windows电脑上用迅雷下载,然后再上传到服务器上。

windows上下载后是这样的四个rpm安装包

f23f1ef2fadd4e9993676f0efd4179f4.png

二、安装ODBC驱动依赖

如windows下载的,你需将下载的四个包传到到服务器。wget下载的可以直接在文件所在的目录里执行以下命令进行本地安装

yum localinstall oracle-instantclient19.22-*
#查看安装结果
find / -name client64
rpm -qa |grep oracle

a3015bdfed2b4ba6ab4493c261c6041f.png

在Ubuntu系统中驱动包安装方法:

#如果是Ubuntu的系统,安装方法:
#要安装alien工具
sudo apt-get install alien
#用以下命令将.rpm包转换为.deb包:
alien  oracle-instantclient19.22-*
#最后,使用dpkg安装转换后的.deb包:
dpkg -i oracle-instantclient19.22-*.deb
安装完后执行下面第三步配置份环境变量,运行sqlplus测试连接,如果报错 libaio.so.1不存在就安装一下依赖
sudo apt-get install libaio*
ln -s /usr/lib/x86_64-linux-gnu/libaio.so.1t64 /usr/lib/libaio.so.1
 

 三、配置系统环境变量

vim /etc/profile
#在文末添加以下内容

export LD_LIBRARY_PATH=/usr/lib/oracle/19.22/client64/lib
export PATH=$PATH:/usr/lib/oracle/19.22/client64/bin

四、刷新环境变量并赋权限

source /etc/profile
chmod +x /usr/lib/oracle/19.22/client64/lib/libsqora.so.19.1

五、确认数据库状态

在数据库所在的服务器确认一下服务的监听状态(不是在zabbix服务器)

su - oracle
lsnrctl start

e520c9bdfc3c4cb2b18208c1b1711a23.png

六、在zabbix服务器测试

用sqlplus工具去登录数据库目标(这里示例:10.90.1.93)服务器,

sqlplus system/Admin123@10.90.1.93:1521/orclcdb
exit;

登录成功如下图: 

5a7c3070c9ca41c99fe8c00b11eecacc.png

七、配置odbcinst.ini

在文末添加上以下内容

vim /etc/odbcinst.ini

[Oracle]
Description=Oracle ODBC driver for Oracle 19c
Driver=/usr/lib/oracle/19.22/client64/lib/libsqora.so.19.1

八、配置odbc.ini

在文末添加上以下内容

vim /etc/odbc.ini

[oracle93]
Driver = Oracle
ServerName = 10.90.1.93:1521/orclcdb
Port = 1521
UserID = system
Password = Admin123

配置好以后如图下图:

4fef2438c49541b7aa9ed0571d381bd3.png

九、用isql工具测试ODBC连接

测试命令:isql -v oracle93

874f1be253c54a9f8081ca8c6e8c4009.png

十、在zabbix网页上监控Oracle,先创建主机

在zabbix网页上 左右【数据采集】菜单【主机】 右上角 【创建主机】,填写对应的名称即可

2b7aebf4b1b94c8ebff3a8b6e93248bc.png

十一、创建自定义监控项

在【主机】界面点击监控项,(自己写监控项的方式 ,后面有写用模板的方式监控)

9030bc9eca6346329199ebc3f5c43f2d.png

右上角有【创建监控项】,(dsn名称在odbc.ini配置文件上)

d93bfa0c52a44512b3bcc003332a1bc1.png

查询语句SELECT * FROM v$version; 点测试

564fe4d56a324849bfa2889f5c23bf73.png

再写一个数据库状态查询的语句

b4ebc4368a5d4657bbcfdcb7aeb7f6e1.png

十二、利用ODBC模板监控Oracle

1)模板另存

配置-模板-Oracle by ODB-全克隆,另存为Oracle by ODBC bear,点击应用户

2)配置主机

配置-主机-创建主机-选择模板Oracle by ODBC bear

3)在模板宏的地方做以下创建

{$ORACLE.DRIVER} Oracle

{$ORACLE.PASSWORD} Admin123

{$ORACLE.PORT} 1521

{$ORACLE.SERVICE} orclcdb

{$ORACLE.USER} system

{$HOST.CONN} 10.90.1.93 有的模板里面名字叫 {$ORACLE.HOST}

图示如下:

1)克隆原生模板名字为Oracle by ODBC bear

81246600cd444419afcd9615450bb6f8.png

2)添加配置要监控的主机

50c82daebd604b0fbe8f6ee27f44e945.png

3)设置主机宏

f30433a7905841e3a01255561cd385a1.png

十三、验证结果

在【监测】——【最新数据】里面查看结果,已经都采集到数据了。

55a5db8cf3434aab9f601e9d88a0063d.png

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐