ITPub博客

首页 > 数据库 > Oracle > [20181224]使用odbc连接oracle数据库.txt

[20181224]使用odbc连接oracle数据库.txt

原创 Oracle 作者:lfree 时间:2018-12-24 10:07:26 0 删除 编辑

[20181224]使用odbc连接oracle数据库.txt


--//测试使用odbc连接oracle数据库.


1.首先检查是否按照odbc驱动:


# scp unixODBC64-*x86_64* root@192.168.100.78:/root/rpm_tgz/

root@192.168.100.78's password:

unixODBC64-2.2.14-3.el5.x86_64.rpm         100%  138KB 137.8KB/s   00:00

unixODBC64-devel-2.2.14-3.el5.x86_64.rpm   100%   44KB  43.8KB/s   00:00

unixODBC64-libs-2.2.14-3.el5.x86_64.rpm    100%  331KB 330.7KB/s   00:00


# scp libtool-ltdl-1.5.22-7.el5_4.x86_64.rpm root@192.168.100.78:/root/rpm_tgz

root@192.168.100.78's password:

libtool-ltdl-1.5.22-7.el5_4.x86_64.rpm     100%   38KB  37.6KB/s   00:00


--//注:我服务器是64位的,可以选择按照64位版本.


# rpm -ivh unixODBC64-2.2.14-3.el5.x86_64.rpm unixODBC64-devel-2.2.14-3.el5.x86_64.rpm unixODBC64-libs-2.2.14-3.el5.x86_64.rpm libtool-ltdl-1.5.22-7.el5_4.x86_64.rpm

warning: unixODBC64-2.2.14-3.el5.x86_64.rpm: Header V3 DSA signature: NOKEY, key ID 1e5e0159

Preparing...                ########################################### [100%]

   1:libtool-ltdl           ########################################### [ 25%]

   2:unixODBC64-libs        ########################################### [ 50%]

   3:unixODBC64             ########################################### [ 75%]

   4:unixODBC64-devel       ########################################### [100%]


2.建立配置文件:

--//定位驱动程序.

$ locate libsqora.so

/u01/app/oracle/product/11.2.0.4/dbhome_1/lib/libsqora.so.11.1


$ mkdir odbc

$ cd    odbc


--//也可以配置在/etc下odbc.ini,odbcinst.ini文件.


$ cat odbc.ini

[BOOK]

Driver = OracleODBC11

DSN = BOOK

ServerName = BOOK


$ cat odbcinst.ini

[OracleODBC11]

Description     = Oracle ODBC driver for Oracle 11

Driver          = /u01/app/oracle/product/11.2.0.4/dbhome_1/lib/libsqora.so.11.1


$ export ODBCSYSINI=/home/oracle/odbc


3.测试:

$ isql BOOK scott book -v

[01000][unixODBC][Driver Manager]Can't open lib '/u01/app/oracle/product/11.2.0.4/dbhome_1/lib/libsqora.so.11.1' :libodbcinst.so.1: cannot open shared object file: No such file or directory

[ISQL]ERROR: Could not SQLConnect


--//奇怪libodbcinst在unixODBC64-libs包里面已经安装了.


# ls -l libodbcinst.so*

lrwxrwxrwx 1 root root    20 2018-12-24 09:16:56 libodbcinst.so -> libodbcinst.so.2.0.0

lrwxrwxrwx 1 root root    20 2018-12-24 09:16:55 libodbcinst.so.2 -> libodbcinst.so.2.0.0

-rwxr-xr-x 1 root root 64816 2011-12-21 06:56:57 libodbcinst.so.2.0.0

--//奇怪没有链接到libodbcinst.so.1,链接的是libodbcinst.so.2.0.0.


# ln -s libodbcinst.so.2.0.0 libodbcinst.so.1

# ls -l libodbcinst.so*

lrwxrwxrwx 1 root root    20 2018-12-24 09:16:56 libodbcinst.so -> libodbcinst.so.2.0.0

lrwxrwxrwx 1 root root    20 2018-12-24 10:00:09 libodbcinst.so.1 -> libodbcinst.so.2.0.0

lrwxrwxrwx 1 root root    20 2018-12-24 09:16:55 libodbcinst.so.2 -> libodbcinst.so.2.0.0

-rwxr-xr-x 1 root root 64816 2011-12-21 06:56:57 libodbcinst.so.2.0.0


$ rlwrap isql BOOK scott book -v

+---------------------------------------+

| Connected!                            |

|                                       |

| sql-statement                         |

| help [tablename]                      |

| quit                                  |

|                                       |

+---------------------------------------+

SQL> select * from dept;

+-------+---------------+--------------+

| DEPTNO| DNAME         | LOC          |

+-------+---------------+--------------+

| 10    | ACCOUNTING    | NEW YORK     |

| 20    | RESEARCH      | DALLAS       |

| 30    | SALES         | CHICAGO      |

| 40    | OPERATIONS    | BOSTON       |

+-------+---------------+--------------+

SQLRowCount returns -1

4 rows fetched

--//OK.

--//估计自己也不会用,仅仅作为简单的学习笔记.


来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/267265/viewspace-2286153/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
熟悉oracle相关技术,擅长sql优化,rman备份与恢复,熟悉linux shell编程。

注册时间:2008-01-03

  • 博文量
    2852
  • 访问量
    6641079