zoukankan      html  css  js  c++  java
  • zabbix-ODBC-oracle

    odbc版本向下兼容,本次使用的是18.5版本的

    在zabbix-server上安装
    yum -y install unixODBC unixODBC-devel

    下载以下4个包

    -rw-r--r-- 1 root root 51528664 6月   3 12:27 oracle-instantclient18.5-basic-18.5.0.0.0-3.x86_64.rpm
    -rw-r--r-- 1 root root   609896 6月   3 12:25 oracle-instantclient18.5-devel-18.5.0.0.0-3.x86_64.rpm
    -rw-r--r-- 1 root root   257264 6月   3 12:24 oracle-instantclient18.5-odbc-18.5.0.0.0-3.x86_64.rpm
    -rw-r--r-- 1 root root   709112 6月   3 12:26 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
    

    设置环境变量之前,在/usr/lib/oracle/18.5/client64下创建network/admin文件夹,
    mkdir /usr/lib/oracle/18.5/client64/network/admin -p

    配置sqlplus连接扩展

    network/admin下创建tnsnames.ora

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

    创建sqlnet.ora 作用是配置解析顺序, name/password@xxxxx xxxx会先去tnsnames寻找这个名字,没有的话会解析为ip
    NAME_DIRECTORY_PATH=(TNSNAMES,EZCONNECT)

    配置环境变量
    环境变量必须配置,否则会造成[01000] [unixODBC][Driver Manager]Can't open lib '/usr/lib64/lxxxxx.so' : file not found

    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/bin
    

    配置需要的类库

    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 
    [DSN名称]                                将在zabbix item key中使用
    Driver= oracle                          tnsnames.ini 配置的驱动名称
    ServerName= ip:port/sid        ip:port/sid
    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配置

    出现的问题

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

      需要查找zabbix服务的环境变量文件 没有则新建 默认情况在 /etc/sysconfig 下 server 新建zabbix-server proxy新建zabbix-proxy
      对于自定义的zabbix服务,可以查询相关的service文件查找环境变量文件路径
      cat /usr/lib/systemd/system/sdata-server.service

      编辑该文件即可
      在其中添加
    vim /etc/sysconfig/zabbix-server
    LD_LIBRARY_PATH=/usr/lib/oracle/18.5/client64/lib
    

    重启servewr服务即可
    官方issue https://support.zabbix.com/browse/ZBX-12450

    sql的自动发现

    https://www.zabbix.com/documentation/4.0/zh/manual/discovery/low_level_discovery/sql_queries

  • 相关阅读:
    转载 设计模式大集锦 程序员面试全攻略
    转载 如何给项目选择最合适的编程语言?
    python–ntohll和htonll的实现(转载)
    python 动态加载模块和类
    转载 推荐9个非常有用的开发技巧给Web开发者
    python PyDev统一编码
    mysql 设置编码
    Python MySQLdb.connect连接lampp中mysql服务器问题的解决
    转载 Python编码时的注意事项
    转载 Web前端:11个让你代码整洁的原则
  • 原文地址:https://www.cnblogs.com/cizao/p/13039881.html
Copyright © 2011-2022 走看看