如何手工配置DBControl

  • 2019 年 10 月 4 日
  • 筆記

版權聲明:本文為部落客原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接和本聲明。

本文鏈接:https://blog.csdn.net/eygle/article/details/100656989

原文:https://www.modb.pro/db/6388 (複製至瀏覽器打開,即可查看)

本文為原創文章,如有轉載,請標註出處。

摘要:手工配置DBControl和啟動DBConsole服務

手工配置DBControl


如果在創建資料庫時沒有選擇DBcontrol,或者之後修改過資料庫資訊,使得原有的DBcontrol失效,則可以通過emca創建、修改、重建或者刪除DBcontrol的配置。

在Windows命令行下,鍵入emca -h命令,則可以看到相關的提示資訊: C:>emca -h C:oracle10.2.0binemca.bat [操作] [模式] [資料庫類型] [標記] [參數] -h | –h | -help | –help: 列印此幫助消息 -version: 列印版本 -config dbcontrol db [-repos (create | recreate)] [-cluster] [-silent] [-backup] [參數]: 配置資料庫的 Database Control -config centralAgent (db | asm) [-cluster] [-silent] [參數]: 配置中心代理管理 -config all db [-repos (create | recreate)] [-cluster] [-silent] [-backup] [參數]: 配置 Database Control 和中心代理管理 ……

現在通過手工方式來配置dbcontrol:

C:>emca -repos create EMCA 開始於 2007-1-25 11:01:41 EM Configuration Assistant 10.2.0.1.0 正式版 版權所有 (c) 2003, 2005, Oracle。保留所有權利。 輸入以下資訊: 資料庫 SID: eygle 監聽程式埠號: 1521 SYS 用戶的口令: SYSMAN 用戶的口令: 是否繼續? [yes(Y)/no(N)]: y 2007-1-25 11:01:56 oracle.sysman.emcp.EMConfig perform 資訊: 正在將此操作記錄到 C:oracle10.2.0cfgtoollogsemcaeygleemca_2007-01-25_11-01-41-上午.log。 2007-1-25 11:01:57 oracle.sysman.emcp.EMReposConfig createRepository 資訊: 正在創建 EM 資料檔案庫 (此操作可能需要一段時間)… 2007-1-25 11:06:16 oracle.sysman.emcp.EMReposConfig invoke 資訊: 已成功創建資料檔案庫 已成功完成 Enterprise Manager 的配置 EMCA 結束於 2007-1-25 11:06:16

更詳細的日誌可以在$ORACLE_HOME/cfgtoollogs/emca目錄下找到。

啟動EM可以在命令行鍵入「emctl start dbconsole」命令。由於EM需要J2EE環境支援,正常創建之後,在$ORACLE_HOME目錄下將會建立一個類似$ORACLE_HOME/oc4j/j2ee/OC4J_DBConsole_<hostname>_<sid>的目錄,如果該目錄結構不存在,則EM將無法啟動:

C:>set ORACLE_SID=eygle C:>emctl start dbconsole OC4J Configuration issue. C:oracle10.2.0/oc4j/j2ee/OC4J_DBConsole_gqgai_eygle not found.

注意到以上目錄結構和主機名稱有關,如果伺服器修改過主機名稱(有時候與IP地址相關)等資訊,則EM可能無法啟動,此時就需要重新配置EM。

如果已經創建過了檔案庫,則需要指定recreate參數,注意不要再繁忙時段執行重建操作,其密集的SQL可能會引發資料庫競爭。重建在命令行輸入如下命令即可:

C:>emca -config dbcontrol db -repos recreate EMCA 開始於 2007-1-25 11:18:00 EM Configuration Assistant 10.2.0.1.0 正式版 版權所有 (c) 2003, 2005, Oracle。保留所有權利。 輸入以下資訊: 資料庫 SID: eygle 監聽程式埠號: 1521 SYS 用戶的口令: DBSNMP 用戶的口令: SYSMAN 用戶的口令: SYSMAN 用戶的口令: 通知的電子郵件地址 (可選): [email protected] 通知的發件 (SMTP) 伺服器 (可選): smtp.hurray.com.cn —————————————————————– 已指定以下設置 資料庫 ORACLE_HOME ……………. C:oracle10.2.0 資料庫主機名 ……………. gqgai 監聽程式埠號 ……………. 1521 資料庫 SID ……………. eygle 通知的電子郵件地址 …………… [email protected] 通知的發件 (SMTP) 伺服器 …………… smtp.hurray.com.cn —————————————————————– 是否繼續? [yes(Y)/no(N)]: y 2007-1-25 11:18:48 oracle.sysman.emcp.EMConfig perform 資訊: 正在將此操作記錄到 C:oracle10.2.0cfgtoollogsemcaeygleemca_2007-01-25_11-18-00-上午.log。 2007-1-25 11:18:50 oracle.sysman.emcp.EMReposConfig dropRepository 資訊: 正在刪除 EM 資料檔案庫 (此操作可能需要一段時間)… 2007-1-25 11:20:25 oracle.sysman.emcp.EMReposConfig invoke 資訊: 已成功刪除資料檔案庫 2007-1-25 11:20:25 oracle.sysman.emcp.EMReposConfig createRepository 資訊: 正在創建 EM 資料檔案庫 (此操作可能需要一段時間)… 2007-1-25 11:23:53 oracle.sysman.emcp.EMReposConfig invoke 資訊: 已成功創建資料檔案庫 2007-1-25 11:24:00 oracle.sysman.emcp.ParamsManager getLocalListener 警告: 檢索 gqgai 的監聽程式時出錯 2007-1-25 11:24:02 oracle.sysman.emcp.util.DBControlUtil startOMS 資訊: 正在啟動 Database Control (此操作可能需要一段時間)… 2007-1-25 11:24:52 oracle.sysman.emcp.EMDBPostConfig performConfiguration 資訊: 已成功啟動 Database Control 2007-1-25 11:24:53 oracle.sysman.emcp.EMDBPostConfig performConfiguration 警告: 無法創建 Database Control 快捷方式 2007-1-25 11:24:53 oracle.sysman.emcp.EMDBPostConfig performConfiguration 資訊: >>>>>>>>>>> Database Control URL 為 http://gqgai:1158/em <<<<<<<<<<< 已成功完成 Enterprise Manager 的配置 EMCA 結束於 2007-1-25 11:24:53

執行成功之後,Oracle主要創建的相關目錄有2個,分別是:

  • ¡ $ORACLE_HOME/oc4j/j2ee/OC4J_DBConsole_<hostname>_<sid>
  • ¡ $ORACLE_HOME/<hostname>_<sid>

可以簡單看一下這兩個目錄的結構,如圖2-10所示。

圖2-10 目錄結構

這一系列的操作完成之後,DBConsole就可以正常啟動了,在Windows上的服務中,一個相關的服務(這裡是OracleDBConsoleeygle)會隨之自動創建,如圖2-11所示。

圖2-11 自動創建的服務

通過服務或者命令行工具emctl都可以啟動或停止console服務。

以上的步驟實際上是重複了第1章中創建資料庫執行的最後一條命令:

host C:oracle10.2.0binemca.bat -config dbcontrol db -silent -DB_UNIQUE_NAME eygle -PORT 1521 -EM_HOME C:oracle10.2.0 -LISTENER LISTENER -SERVICE_NAME eygle -SYS_PWD &&sysPassword -SID eygle -ORACLE_HOME C:oracle10.2.0 -DBSNMP_PWD &&dbsnmpPassword -HOST gqgai -LISTENER_OH C:oracle10.2.0 -LOG_FILE C:oracleadmineyglescriptsemConfig.log -SYSMAN_PWD &&sysmanPassword;

啟停DBConsole服務


在Windows系統上,可以通過服務來啟停DBConsole,也可以通過命令行工具emctl來控制DBConsole的啟停。

啟動過程如下:

C:>emctl start dbconsole Oracle Enterprise Manager 10g Database Control Release 10.2.0.1.0 Copyright (c) 1996, 2005 Oracle Corporation. All rights reserved. http://gqgai:1158/em/console/aboutApplication Starting Oracle Enterprise Manager 10g Database Control … OracleDBConsoleeygle 服務正在啟動 ……………. OracleDBConsoleeygle 服務已經啟動成功。

關閉服務使用如下命令:

C:>emctl stop dbconsole Oracle Enterprise Manager 10g Database Control Release 10.2.0.1.0 Copyright (c) 1996, 2005 Oracle Corporation. All rights reserved. http://gqgai:1158/em/console/aboutApplication OracleDBConsoleeygle 服務正在停止…………… OracleDBConsoleeygle 服務已成功停止。

emctl工具在Windows/Linux/UNIX下的用法是一致的,其本質是通過腳本執行一系列的命令來啟動EM,具體內容可以直接打開emctl文件查看,在Windows系統上是一個批處理文件,在其他平台一般是一個Shell腳本:

C:>which emctl C:oracle10.2.0bin/emctl.bat