2014-09-21 93 views
7

我有一臺可充當Oracle數據庫11g企業版服務器的計算機。我想使用另一臺運行Windows XP SP3的計算機作爲此服務器的客戶端。SQLPLUS不能在win XP SP3上使用oracle即時客戶端運行

因此我決定在客戶端PC上安裝Oracle Instant Client 11.2.0.4.0。我從Oracle OTN下載了壓縮文件,並將其解壓縮到像c:\oracle\instantclient11.2.0.4.0這樣的文件夾中。然後,我將此路徑添加到系統路徑變量,並創建了另一個名爲TNS_ADMIN的系統變量,其變量名稱與Oracle Instant Client具有相同的路徑c:\oracle\instantclient11.2.0.4.0

最後我從服務器pc複製了tnsnames.ora。

所以我想嘗試從CMD.EXE sqlplus中,但錯誤是:

The procedure entry point OCIBindByName2 could not be located in the dynamic link library OCI.dll . 

任何人可以幫助我嗎?

+1

這可能是因爲你有一個版本的Oracle客戶端軟件作爲其他軟件包的一部分安裝。試試這個:打開一個命令行窗口,C:,CD \,DIR/S OCI.DLL,看看有多少個版本的DLL出現。祝你好運。 – 2014-09-22 01:44:50

+0

是的,我在我的計算機中搜索名爲OCI.DLL的所有文件,是的,我發現另一個程序有OCI.DLL作爲它的一部分,所以如何處理這個衝突 – luka 2014-09-22 16:52:35

+0

嗯,你可以重命名OCI的「其他」版本.DLL到別的東西(例如,OCI_OTHER.DLL),看看這是否解決了這個問題。祝你好運! – 2014-09-22 18:03:30

回答

1

您是否已將ORACLE_HOME設置爲c:\ oracle \ instantclient11.2.0.4.0?

它應固定在11.2雖然343666.1爲descibed:

這在ORACLE_HOME問題依賴已在錯誤得到解決:5532439 OCI.DLL必須正確CALL SetDllDirectory會。修復方法是根據OCI.DLL所在的位置調用 SetDllDirectory。 解決方法針對此問題:

  1. 做一個即時客戶端的安裝,例如進入C:\ ORACLE \ EZClient102

  2. 設置ORACLE_HOME環境變量設置爲即時客戶端的ORACLE_HOME。

集ORACLE_HOME = C:\ ORACLE \ EZClient102

然後即時客戶端DLL的應 C下加載:\ ORACLE \ EZClient102 \ BIN