Personal Oracle + Developer 2000 開發時,連接字串僅需 user/pass;遷移至 Oracle for NT 後,強制要求 user/pass@alias,大量既有代碼報「ORA-12154: TNS 無法解析」錯誤。改造代碼成本極高,需配置級方案實現無別名直連。
設置預設連接別名(DEFAULT_SERVICE / LOCAL),使客戶端省略 @alias 時自動路由至指定服務。
MYDB):TCP/IP → 主機名 → SID(默認 ORCL)。ORACLE.INI(Win98 為 C:\WINDOWS\ORACLE.INI)。[ORACLE] 區段添加:LOCAL=MYDBCONN user/pass 直連成功。MYDB)。REGEDIT 進入註冊表:HKEY_LOCAL_MACHINE\SOFTWARE\ORACLELOCAL → 數值:MYDBSQLPLUS user/pass 無需 @alias 即可登錄。TNS_ADMIN 統一管理 tnsnames.ora,並配置 NAMES.DEFAULT_DOMAIN 實現同樣效果。