Linux 配置ODBC连接Oracle
在使用kdb_database_link 扩展插件连接Oracle数据库时,必须先配置ODBC,确保通过ODBC能连接Oracle数据库。以下是配置ODBC的过程。
一、安装ODBC
1、安装
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | [root@dbhost03 etc]# yum install unixODBC.x86_64 [kingbase@dbhost03 kbdata]$ isql --version unixODBC 2.3.1 [kingbase@dbhost03 kbdata]$ odbcinst -j unixODBC 2.3.1 DRIVERS............: /usr/ local /etc/odbcinst.ini SYSTEM DATA SOURCES: /usr/ local /etc/odbc.ini FILE DATA SOURCES..: /usr/ local /etc/ODBCDataSources USER DATA SOURCES..: /home/kingbase/.odbc.ini SQLULEN Size .......: 8 SQLLEN Size ........: 8 SQLSETPOSIROW Size .: 8 |
注意:如果设置了LD_LIBRARY_PATH环境变量,则实际生效的是/usr/local/etc/odbcinst.ini ,否则可能是 /etc/odbcinst.ini
2、配置
根据odbcinst -j 显示的路径,配置 odbcinst.ini 和 odbc.ini 文件。
odbcinst.ini 文件内容如下:Driver 根据 下文配置的Oracle ODBC实际路径填写。
[Oracle ODBC Driver] Description = ODBC for Oracle Driver = /opt/Kingbase/ES/V8/Server/lib/libsqora.so.19.1
odbc.ini 文件内容如下:
[test_orcl] Description=Oracle Driver=Oracle ODBC Driver ServerName=test_ora UserID=USER01 Password=user01
二、配置用户的Oracle环境
- 下载 oracle_instantclient 和 instantclient-odbc 。KingbaseES 官方提供的 Oracel_fdw 一般自带了 oracle_instantclient,但不包含instantclient-odbc ,用户如果安装了oracle_fdw插件,只需下载 instantclient-odbc 就行。一般instantclient-odbc 有rpm 和zip两种格式,这里下载zip格式。
- 安装 ODBC 驱动:将 zip 文件解压,提取 libsqora.so 文件,放在 与 oracle_instantclient 相同目录,我的环境是/opt/Kingbase/ES/V8/Server/lib。 这是因为libsqora.so 需要用到oracle_instantclient 相关的库文件。
- 验证ODBC 驱动库文件是否完整:ldd /opt/Kingbase/ES/V8/Server/lib/libsqora.so.19.1 ,确保没有 NOT FOUND的信息
- 配置用户环境变量:ORACLE_HOME 和 TNS_ADMIN,ORACLE_HOME指向oracle_instantclient目录ORACLE_HOME=/opt/Kingbase/ES/V8/Server/lib,TNS_ADMIN 指向 tnsnames.ora 文件的存放位置,根据你的实际配置。
- 新建或修改 tnsnames.ora 文件,增加个tns 条目。类似如下:
-
test_ora = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS =(PROTOCOL = TCP)(Host = 192.168.237.41)(Port = 1521)) ) (CONNECT_DATA =(SID = SOGG)) )
三、验证连接
[kingbase@dbhost03 ~]$ isql -v orcl +---------------------------------------+ | Connected! | | | | sql-statement | | help [tablename] | | quit | | | +---------------------------------------+
确认连接正常。
KINGBASE研究院
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)