[實戰]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

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章