首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫

Oracle Net Configuration Assistant 設定監聽與本地服務名完整圖解

     編輯:Oracle 資料庫相關知識

Oracle Net Configuration Assistant (NetCA) 是設定客戶端/伺服器網路連線的圖形化工具。本文以步驟圖解方式,詳細說明監聽器建立與本地網路服務名(TNS 名稱)配置全流程,適合初學者快速上手。

監聽器設定

  1. 啟動 NetCA → 選擇 Listener configuration → Add
  2. 監聽器名稱:預設 LISTENER
  3. 協議:選擇 TCP
  4. 連接埠:預設 1521(可自訂)
  5. 完成後,以命令啟動:LSNRCTL START

監聽器啟動後,可用 LSNRCTL STATUS 確認服務已註冊。

本地網路服務名設定

  1. NetCA 主選單 → Local Net Service Name configuration → Add
  2. Oracle 版本:選擇 Oracle8i or later database or service
  3. 服務名:輸入資料庫服務名稱(如 ORCL),通常等同 SERVICE_NAME 或 SID
  4. 協議:TCP
  5. 主機名:輸入資料庫伺服器主機名或 IP 位址
  6. 連接埠:預設 1521
  7. 測試連線:使用預設帳號 SCOTT/TIGER 驗證
  8. 完成 → 產生 tnsnames.ora 項目

產生的 tnsnames.ora 範例

ORCL =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.100)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = ORCL)
    )
  )

客戶端設定重點

  • 安裝 Oracle Client 後,NetCA 會自動啟動引導配置
  • 僅需設定「本地網路服務名」,無需在客戶端設定監聽器
  • 確認 sqlnet.ora 中 NAMES.DIRECTORY_PATH = (TNSNAMES) 優先順序

常見問題排查

現象可能原因對策
ORA-12154: TNS could not resolvetnsnames.ora 路徑錯誤、服務名拼寫錯誤檢查 TNS_ADMIN 環境變數、tnsnames.ora 內容
ORA-12541: TNS no listener監聽器未啟動、連接埠/主機錯誤伺服器端執行 LSNRCTL START、確認防火牆
ORA-12514: Listener does not know serviceSERVICE_NAME/SID 不匹配、資料庫未向監聽器註冊檢查資料庫 LOCAL_LISTENER 參數、執行 ALTER SYSTEM REGISTER

進階提示

  • 多個資料庫實例可共用同一監聽器(不同 SID/Service Name)
  • 生產環境建議設定 SECURE_REGISTER_LISTENER 限制動態註冊來源
  • 使用 EZCONNECT 簡易連線語法可免配置 tnsnames.ora:sqlplus user/pwd@host:port/service

NetCA 將複雜的網路配置圖形化,掌握其操作流程是 Oracle 連線管理的基礎技能。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved