Linux配置Oracle ODBC驱动并使用odb工具测试连接

前面多篇文章我们介绍了Trafodion的odb工具,包括如何配置Trafodion的ODBC驱动,如何使用odb数据进行数据的加载、抽取、转换。odb可以在不同的关系型数据库之间进行数据传输而不用数据落地。由于odb是基于ODBC,使用odb从关系型数据库A迁移数据到关系型数据库B之前,需要提前配置好A和B的ODBC连接。本文我们主要描述如何配置Oracle的ODBC并使用odb测试是否可以正常连接Oracle数据库并在后续可以实现迁移到Trafodion数据库。主要步骤如下,

1 下载并安装unixODBC

//yum下载安装包
yum install unixODBC -y
//rpm检查安装包是否存在
rpm -qa | grep unixODBC

2 下载并安装Oracle ODBC驱动

//下载地址:http://www.oracle.com/technetwork/topics/linuxx86-64soft-092277.html
//安装ODBC驱动包
rpm -ivh oracle-instantclient12.1-basic-12.1.0.2.0-1.x86_64.rpm \
oracle-instantclient12.1-odbc-12.1.0.2.0-1.x86_64.rpm

3 配置tnsnames.ora

//创建/etc/oracle目录
mkdir /etc/oracle
//在上述目录下添加tnsnames.ora文件,内容如下
testoracle =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 10.10.14.16)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = orclpdb.esgyn.com)
    )
  )

4 添加环境变量

//将以下命令添加到/etc/profile
export TNS_ADMIN=/etc/oracle
export ORACLE_HOME=/usr/lib/oracle/12.1/client64
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib
export ORCLE_SID=testoracle
//source环境变量
source /etc/profile

//如果使用trafodion用户执行odb命令需要将上述环境变量添加到trafodion用户的.bashrc

5 配置Oracle ODBC配置文件

//配置/etc/odbcinst.ini添加以下行
[Oracle]
Description     = Oracle ODBC driver for Oracle 12g
Driver          = /usr/lib/oracle/12.1/client64/lib/libsqora.so.12.1
Setup           =
FileUsage       =
CPTimeout       =
CPReuse         =

//配置/etc/odbc.ini添加以下行
[oracle]
Driver      = Oracle
Server      = 10.10.14.16
Port        = 1521
ServerName  = testoracle

6 使用odb工具测试连通Oracle

odb64luo -d oracle -u test -p test -i
//以下输出说明能正常连接Oracle数据库
odb [2018-03-28 14:51:49]: starting ODBC connection(s)... 0
        [odb version 1.1.0]
        Build: linux, amd64, gcc generic m64, uodbc, mreadline, dynamic gzip, dynamic libhdfs, dynamic libxml2 [Nov 16 2017 21:28:09]
        DBMS product name (SQL_DBMS_NAME)            : Oracle
        DBMS product version (SQL_DBMS_VER)          : 12.02.0010
        Database name (SQL_DATABASE_NAME)            : 
        Server name (SQL_SERVER_NAME)                : testoracle
        Data source name (SQL_DATA_SOURCE_NAME)      : oracle
        Data source RO (SQL_DATA_SOURCE_READ_ONLY)   : N
        ODBC Driver name (SQL_DRIVER_NAME)           : SQORA32.DLL
        ODBC Driver version (SQL_DRIVER_VER)         : 12.01.0020
        ODBC Driver level (SQL_DRIVER_ODBC_VER)      : 03.52
        ODBC Driver Manager version (SQL_DM_VER)     : 03.52.0002.0002
        ODBC Driver Manager level (SQL_ODBC_VER)     : 03.52
odb [2018-03-28 14:51:50]: exiting. Session Elapsed time 0.312 seconds (00:00:00.312)

至此,配置Oracle ODBC驱动并使用odb工具已经正常连接,在后面的文章中,我们会补充其他流行关系型数据库包括MySQL、PostgreSQL的配置并使用odb连接,敬请期待~

你可能感兴趣的:(Linux配置Oracle ODBC驱动并使用odb工具测试连接)