PL/SQL Developer 依賴 OCI 庫 (oci.dll) 連線 Oracle。Instant Client 提供精簡版 OCI,無需執行安裝程式、不寫入登錄檔,解壓設定環境變數即可使用。
instantclient-basic-windows.x64-21.10.0.0.0dbru.zip 等。
# 解壓至
C:\oracle\instantclient_21_10
# 系統環境變數 → 新增
變數名: ORACLE_HOME
變數值: C:\oracle\instantclient_21_10
# PATH 變數編輯,將 %ORACLE_HOME% 移至最前端
# 在 Instant Client 目錄下建立 network\admin 資料夾
mkdir C:\oracle\instantclient_21_10\network\admin
# 建立 tnsnames.ora
# 內容範例
ORCL =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.100)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = ORCL)
)
)
# 系統環境變數 → 新增
變數名: TNS_ADMIN
變數值: C:\oracle\instantclient_21_10\network\admin
# 字元集設定(建議)
變數名: NLS_LANG
變數值: AMERICAN_AMERICA.AL32UTF8
C:\oracle\instantclient_21_10oci.dll 路徑ORCL 等 TNS 別名。
# 命令列測試
sqlplus user/password@ORCL
# 或 EZCONNECT
sqlplus user/password@//192.168.1.100:1521/ORCL
| 問題 | 解決 |
|---|---|
| 「無法載入 OCI DLL」 | PATH 未包含 Instant Client 目錄、或 32/64 位元不匹配(PL/SQL Developer 32 位元需 32 位元 Instant Client) |
| TNS 別名不顯示 | TNS_ADMIN 路徑錯誤、tnsnames.ora 格式錯誤(括號、縮排) |
| 中文亂碼 | 設定 NLS_LANG=AMERICAN_AMERICA.AL32UTF8(或資料庫實際字元集) |
| 多版本共存 | 不同目錄、不同 ORACLE_HOME、啟動腳本切換環境變數 |