64 位 Windows 環境下,Oracle Client 與 Server 版本、位元數匹配是通訊成功的關鍵。本文整理常見版本對應原則、PL/SQL Developer 等工具連線失敗排查步驟、tnsnames.ora 配置要點。
現象: TNSPING 正常、SQL*Plus 可連線,但 PL/SQL Developer / 應用程式報錯 ORA-12154 或 BadImageFormatException。
原因: 工具為 32 位進程 (如舊版 PL/SQL Developer),嘗試載入 64 位 OCI.DLL 失敗。
解決:
TNS_ADMIN 環境變數指向正確 tnsnames.oraMYDB =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = db-server)(PORT = 1521))
(CONNECT_DATA =
(SERVICE_NAME = orcl) -- 或 (SID = orcl) 視服務端而定
)
)
注意: 服務端若為 SERVICE_NAME,客戶端必須用 SERVICE_NAME;不可混用 SID。
TNSPING MYDB 確認網路解析正常SQLPLUS user/pwd@MYDB 確認基本連線