千家信息网

安装unxiodbc软件,连接oracle数据库

发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,安装unixodbc--以下操作在root用户下操作安装过程和报错处理我是参考及引用网络上的资源,也结合了自己的实际安装环境一、安装unixodbc工具1、下载unixodbc压缩包(unixODBC
千家信息网最后更新 2026年11月01日安装unxiodbc软件,连接oracle数据库

安装unixodbc--以下操作在root用户下操作


安装过程和报错处理我是参考及引用网络上的资源,也结合了自己的实际安装环境


一、安装unixodbc工具

1、下载unixodbc压缩包(unixODBC-2.3.4.tar.gz),用ssh工具将其上传linux服务器。(下载地址:http://www.unixodbc.org/)


2、输入以下命令,进行安装:

#tar -zxvf unixODBC-2.3.4.tar.gz--解压

#cd unixODBC-2.3.4--进入解压后的安装目录

#./configure --prefix=/usr/local/unixODBC-2.3.4 --includedir=/usr/include --libdir=/usr/lib --bindir=/usr/bin --sysconfdir=/etc--对unixODBC-2.3.4软件进行配置

#make--对unixODBC-2.3.4进行编译

#make install--安装unixODBC-2.3.4

ps:在Linux下安装一个应用程序时,一般先运行脚本configure,然后用make来编译源程序,在运行make install,最后运行make clean删除一些临时文件(没做过最后一步)。


二、安装oracle数据库的odbc驱动

1、下载、上传并安装以下两同版本号的rpm软件包

oracle-instantclient11.2-basic-11.2.0.1.0-1.i386.rpm

oracle-instantclient11.2-odbc-11.2.0.1.0-1.i386.rpm

下载地址: http://www.oracle.com/technetwork/topics/linuxx86-64soft-092277.html

#rpm -ivh oracle-instantclient11.2-basic-11.2.0.1.0-1.i386.rpm --安装操作

#rpm -ivh oracle-instantclient11.2-odbc-11.2.0.1.0-1.i386.rpm--安装操作

ps:下载32位或63位的rpm包,由linux系统来决定,用uname -a,可查看当前系统的型号


2、将/usr/lib/oracle/11.2/client/lib/* 拷贝到/usr/lib/目录下--将oracle下动态连接共享库拷贝到linux系统默认路径下


3、执行ldconfig--将linux系统新增的oracle动态连接共享库进行加载


4、在/usr/lib/oracle/11.2/NETwork/admin/ 下创建文件tnsnames.ora ,如下:

ORCL =

(DESCRIPTION =

(ADDRESS_LIST =

(ADDRESS = (PROTOCOL = TCP)(HOST = 10.162.35.137)(PORT = 1521))

)

(CONNECT_DATA =

(SERVICE_NAME = ORCL)

)

)

其中ORCL为一个标识名,配置文件odbc.ini中的ServerName项要与之相对应,SERVICE_NAME后跟要访问的数据库名,HOST为数据库所在主机IP地址,PORT为端口号。

ps:若之前已经有tnsnames.ora文件,注意看下配置细节即可。


5、在/etc/profile中增加: export TNS_ADMIN=/usr/lib/oracle/11.2/network/admin/--配置新增的环境变量信息


6、执行 . /etc/profile (注意前面的英文句号,点号后面有空格) 将环境变量注册


三、文件配置

主要是修改 /etc/ 下的两个配置文件 odbc.ini 及 odbcinst.ini 。

1、在/etc/odbcinst.ini 中对各数据库的驱动进行配置,一般格式如

[oraclezy]

Description = odbc for Oracle--描述

Driver = /usr/lib/libsqora.so.11.1--驱动程序

Setup = /usr/lib/liboraodbcS.so--设置

FileUsage = 1

[ODBC]

Trace=1--追踪

Debug=1--调试

Pooling=No

ps:上述配置中的 Driver 及 Setup 后跟的字段,可能由于版本不同,配置会略有不同,要以本机上的库名或驱动名为准,可先用 ls 命令查看一下。


2、在 /etc/odbc.ini 中对应用程序要调用的ODBC接口进行配置,格式如下:

[oracle]

#odbcinst.ini中对应中括号中的名字

driver = oraclezy

server = 192.168.1.167 or localhost

port = 1521

#tns的名字

ServerName = ORCL

UserID = root

password = 123456(以安装oracle数据库时注册的用户为主)


四、测试连接

完成以上操作后,执行iqsl oracle(以在odbc.ini的数据源名为主) root(用户) 123456(密码) -v

即:isql oracle root 123456 -v

出现此界面,即安装配置成功:

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

| Connected! |

| |

| sql-statement |

| help [tablename] |

| quit |

| |

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

SQL>


五、odbc连接oracle数据库报错类型

1、ORA-12170:TNS:Connect timeout occurred:连接超时,注意/etc/odbc.ini 配置文件中servername与tnsnames.ora是否一致

ps:我在安装时,就只遇到一个报错:

[01000][unixODBC][Driver Manager]Can't open lib '/usr/lib/oracle/10.2.0.4/client

/libsqora.so.10.1' : file not found

[ISQL]ERROR: Could not SQLConnect

处理方法:

原因是libsqora.so.11.1依赖的包没有

参考链接:http://bbs.csdn.net/topics/390566189

1、使用如下命令查看依赖关系

# ldd /usr/lib/oracle/11.2/client64/lib/libsqora.so.11.1

linux-vdso.so.1 => (0x00007fff99b1d000)

libdl.so.2 => /lib64/libdl.so.2 (0x00007fbcb52f1000)

libm.so.6 => /lib64/libm.so.6 (0x00007fbcb506c000)

libpthread.so.0 => /lib64/libpthread.so.0 (0x00007fbcb4e4f000)

libnsl.so.1 => /lib64/libnsl.so.1 (0x00007fbcb4c36000)

libclntsh.so.11.1 => /usr/lib/oracle/11.2/client64/lib/libclntsh.so.11.1 (0x00007fbcb22c6000)

libodbcinst.so.1 => not found (0x00007fbcb20b5000)

libc.so.6 => /lib64/libc.so.6 (0x00007fbcb1d23000)

/lib64/ld-linux-x86-64.so.2 (0x000000393aa00000)

libnnz11.so => /usr/lib/oracle/11.2/client64/lib/libnnz11.so (0x00007fbcb1955000)

libaio.so.1 => /lib64/libaio.so.1 (0x00007fbcb1754000)

libltdl.so.7 => /usr/lib64/libltdl.so.7 (0x00007fbcb154b000)

2、使用如下命令查找libodbcinst.so.1的位置

#find / -name libodbcinst*

/usr/lib64/libodbcinst.so

/usr/lib64/libodbcinst.so.2

/usr/lib64/libodbcinst.so.2.0.0

/usr/lib/libodbcinst.so

/usr/lib/libodbcinst.so.2

/usr/lib/libodbcinst.so.2.0.0

确实没有libodbcinst.so.1

3、解决该问题是实际操作

将/usr/lib64/libodbcinst.so.2、/usr/lib/libodbcinst.so.2分别复制

#cp /usr/lib/libodbcinst.so.2 /usr/lib/libodbcinst.so.1

#cp /usr/lib64/libodbcinst.so.2 /usr/lib64/libodbcinst.so.1

重新运行验证命令即可


配置 数据 文件 数据库 命令 系统 运行 驱动 地址 环境 用户 程序 软件 不同 动态 变量 名字 后跟 实际 工具 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 上海互联网科技有限公司 中国 科技 互联网 猪兼强互联网科技 深圳天众互联网科技公司 互联网金融和金融科技 欧洲十大科技互联网公司 成都铂石互联网科技做什么的 宁夏科技产业互联网案例 移动互联网年度科技创新 哈尔滨屹滨互联网科技有限公司 电子科技大学互联网创业大赛 乌苏新华互联网科技做什么的 民营互联网公司国防科技 畅思互联网科技 广州新华互联网科技学校电竞方面 伍佰万互联网科技怎么赚钱 城市宝互联网科技有限公司 互联网与数字科技关系 神州科技互联网有限公司 株洲百竞科技的互联网营销顾问 互联网科技公司华为 互联网金融公司科技 奔汉互联网科技 互联网科技创新企业排名 科技大学互联网 科技互联网的核心竞争力 领航科技大厦互联网公司 新氧科技和美国互联网有关系吗 科技互联网经济论坛 广东猫王互联网科技有限公司电话
0