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

解決 Oracle 佔用 8080 端口衝突:禁用 XDB HTTP 服務

     編輯:MySQL 資料庫相關知識

問題現象

安裝 Oracle 後,瀏覽器訪問 https://localhost:8080 彈出 XDB 登錄框,導致 Tomcat、JBoss 等需 8080 端口的應用無法啟動。

根因

Oracle XML DB (XDB) 默認啟用 HTTP 服務監聽 8080 端口(TCP 協議)。

解決方案:修改 SPFILE 禁用 HTTP 分發器

  1. 定位 SPFILE: $ORACLE_HOME/dbs/spfile.ora(或 init.ora)
  2. 編輯文件: 註釋或刪除行:
    *.dispatchers='(PROTOCOL=TCP) (SERVICE=orclXDB)'
  3. 重啟生效:
    • 重啟服務:OracleService
    • 或重啟操作系統

後續修復:重建監聽器與服務名

禁用 XDB 後,Enterprise Manager Console 等工具可能無法連接,需重建:

  1. 運行 Net Configuration Assistant:
    • 刪除現有監聽器
    • 新建監聽器(默認 1521)
    • 重啟監聽器
  2. 運行 Net Manager:
    • 刪除現有服務命名
    • 新建服務命名

驗證

  • netstat -an | findstr 8080 無輸出 → 端口釋放
  • Tomcat/JBoss 正常啟動綁定 8080
  • Oracle 客戶端(SQL*Plus、JDBC)正常連接 1521

備選方案(不推薦)

  • 修改 Tomcat/JBoss 端口(治標不治本)
  • 修改 XDB HTTP 端口(DBMS_XDB.SETHTTPPORT(新端口)),但仍佔用系統端口

總結

通過禁用 Oracle XDB HTTP 分發器徹底釋放 8080 端口,配合重建監聽器恢復管理工具連接,是解決端口衝突的根治方案。操作前請備份數據庫與配置文件。

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