Oracle

使用 unixODBC 連接 Oracle 伺服器

  • February 21, 2012

我正在嘗試配置我們的 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_HOMEto/usr/lib/oracle$TNS_ADMINto 包含我的(有效) Tnsnames.ora 文件的目錄。這是我的/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 已被編輯…host、port 和 db 確實存在,並且正確)

當我跑步時,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 個小時…

我要回家過夜,但如果有必要,明天早上我很樂意向任何願意提供幫助的人提供更多細節……

您可能希望在 OTN 論壇中查看此討論。相關討論發生線上程的 75% 左右,使用者 ardesai 的第二個文章。

新的和 Oracle 客戶端兼容的 unixODBC64 軟體包剛剛在 RHEL5.8 中發布。

引用自:https://serverfault.com/questions/128675