首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> Oracle 資料庫 >> Oracle 資料庫基礎

Oracle 7/8 for NT 免別名直連數據庫的配置技巧

     編輯:Oracle 資料庫基礎

問題背景

Personal Oracle + Developer 2000 開發時,連接字串僅需 user/pass;遷移至 Oracle for NT 後,強制要求 user/pass@alias,大量既有代碼報「ORA-12154: TNS 無法解析」錯誤。改造代碼成本極高,需配置級方案實現無別名直連。

核心原理

設置預設連接別名(DEFAULT_SERVICE / LOCAL),使客戶端省略 @alias 時自動路由至指定服務。

Oracle 7 for NT 配置步驟

  1. 運行 Net Easy Config 創建別名(如 MYDB):
    協議 TCP/IP → 主機名 → SID(默認 ORCL)。
  2. 編輯 Windows 目錄下 ORACLE.INI(Win98 為 C:\WINDOWS\ORACLE.INI)。
  3. 在 [ORACLE] 區段添加:LOCAL=MYDB
  4. 重啟應用/ SQL*Plus,驗證 CONN user/pass 直連成功。

Oracle 8 for NT 配置步驟

  1. 同樣用 Net Easy Config 創建別名(如 MYDB)。
  2. 運行 REGEDIT 進入註冊表:
    HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE
  3. 新建字符串值:
    名稱:LOCAL → 數值:MYDB
  4. 重啟應用驗證。

驗證與遷移建議

  • SQL*Plus 測試:SQLPLUS user/pass 無需 @alias 即可登錄。
  • Developer 2000 Forms/Reports 運行正常,無需修改連接屬性。
  • 經驗證環境:Developer 2.1 + Oracle 7.3.4 / 8.0.5 for NT。
  • 9i 及以上版本建議使用 TNS_ADMIN 統一管理 tnsnames.ora,並配置 NAMES.DEFAULT_DOMAIN 實現同樣效果。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved