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

Oracle 10g 修改主機名稱後 Enterprise Manager 無法啟動的解決方案

     編輯:Oracle 資料庫基礎

問題背景

在 Oracle 10g 環境中,當主機名稱從 info 變更為 info-0073 後,Enterprise Manager (EM) Database Control 無法正常啟動。本文記錄完整的排查與修復過程,供遇到相同問題的 DBA 參考。

錯誤現象與初步嘗試

執行 emctl start dbconsole 時,首先提示 Environment variable Oracle_SID not defined,需先設定 ORACLE_SID:

C:\> set ORACLE_SID=WWMDB
C:\> emctl start dbconsole

隨後出現路徑錯誤:D:\Oracle\product\10.1.0\Db_1/info-0073_WWMDB not found。系統仍尋找舊主機名稱 info_WWMDB 的目錄。將目錄重命名為 info-0073_WWMDB 後再嘗試啟動,雖然進度推進,但服務啟動失敗:

Starting Oracle Enterprise Manager 10g Database Control ...The OracleDBConsolewwmdb service could not be started.
A service specific error occurred: 2.

手動修改設定檔嘗試

嘗試修改以下關鍵設定檔中的主機名稱參考:

  • D:\Oracle\product\10.1.0\Db_1\info-0073_wwmdb\sysman\config\emd.properties
  • D:\Oracle\product\10.1.0\Db_1\info-0073_wwmdb\sysman\config\emoms.properties
  • D:\Oracle\product\10.1.0\Db_1\info-0073_wwmdb\sysman\emd\targets.xml

需更新的關鍵參數包含:agentStateDir、chronosRoot、REPOSITORY_URL、EMD_URL、Oracle.sysman.emSDK.svlt.ConsoleServerHost、Oracle.sysman.eml.mntr.emdRepServer 以及連線描述符中的 HOST 參數。

修改完成後仍報錯,考量到需修改的設定檔眾多且易遺漏,決定改用 emca 重新配置服務。

使用 EMCA 重新配置 Database Control

執行 emca -r 進行重新配置,依提示輸入監聽埠號、資料庫 SID、服務名稱、郵件通知設定、dbsnmp、sysman、sys 密碼等資訊。配置過程中出現兩項前置檢查警告:

  • shared_pool_size 必須 ≥ 80 MB
  • job_queue_processes 必須 ≥ 1

透過 SQL*Plus 修正參數:

SQL> ALTER SYSTEM SET shared_pool_size=80M SCOPE=BOTH;
SQL> ALTER SYSTEM SET job_queue_processes=10 SCOPE=BOTH;

修正後再次執行 emca -r,配置順利完成,輸出關鍵資訊:

信息: DBConsole 已成功啟動
信息: >>>>>>>>>>> Enterprise Manager URL 為 https://info-0073:5500/em <<<<<<<<<<
Enterprise Manager 配置已成功完成

總結

修改主機名稱後,EM 相關設定檔散落於多個目錄,手動逐一修改極易遺漏。使用 emca -r 重新配置可一次性修正所有路徑、URL、服務註冊等資訊,並自動檢查必要的初始化參數,是最可靠、最省時的解決方案。

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