使用 unixODBC 连接到 Oracle 服务器

使用 unixODBC 连接到 Oracle 服务器

我正在尝试配置我们的 Web 服务器 (RHEL 5.4 x86) 以使用 unixODBC 连接到 Oracle 数据库。我已安装 unixODBC-2.2.11-7.1.1,yum 告诉我这是最新版本。我还安装了 Oracle InstantClient 11.2 和 Oracle InstantClient ODBC 库。

我已将所有 .so 文件符号链接到/usr/lib/oracle/11.2/client/lib/usr/lib我已将 设置$LD_LIBRARY_PATH/usr/lib/、设置$ORACLE_HOME/usr/lib/oracle和设置为包含我的(有效)Tnsnames.ora 文件的目录。以下是我的文件$TNS_ADMIN的内容:/etc/odbcinst.ini

[Oracle]
Description = Oracle ODBC Connection
Driver = /usr/lib/libsqora.so.11.1
Setup =
FileUsage =

和我的/etc/odbc.ini文件:

[Oracle]
Application Attributes = T
Attributes = W
BatchAutocommitMode = IfAllSuccessful
CloseCursor = F
DisableDPM = F
DisableMTS = T
Driver = Oracle
EXECSchemaOpt =
EXECSyntax = T
Failover = T
FailoverDelay = 10
FailoverRetryCount = 10
FetchBufferSize = 64000
ForceWCHAR = F
Lobs = T
Longs = T
MetadataIdDefault = F
QueryTimeout = T
ResultSets = T
ServerName = //<host>:<port>/<db>
SQLGetData extensions = F
Translation DLL =
Translation Option = 0
UserID =

(ServerName 已被编辑...主机、端口和数据库实际上都存在,并且正确)

当我跑步时isql我得到

$ isql -v Oracle
isql: symbol lookup error: /usr/lib/libsqora.so.11.1: undefined symbol: SQLGetPrivateProfileStringW

运行 dltest 会给我

$ dltest Oracle SQLConnect
[dltest] ERROR dlopen: Oracle: cannot open shared object file: No such file or directory

如果有人有任何见解,我将不胜感激,我已经尝试连接这个大约 5 个小时了......

我今晚要回家了,但如果有必要,明天早上我会很乐意向任何愿意提供帮助的人提供更多详细信息……

答案1

您可能需要检查这次讨论在 OTN 论坛中。相关讨论出现在该主题的 75% 左右,即用户 ardesai 的第二篇帖子。

答案2

新的与 Oracle 客户端兼容的 unixODBC64 包刚刚在 RHEL5.8 中发布。

相关内容