原文:https://www.modb.pro/db/6388 (复制至浏览器打开,即可查看)
本文为数据和云原创文章,如有转载,请标注出处。
摘要:手工配置DBControl和启动DBConsole服务
手工配置DBControl
如果在创建数据库时没有选择DBcontrol,或者之后修改过数据库信息,使得原有的DBcontrol失效,则可以通过emca创建、修改、重建或者删除DBcontrol的配置。
在windows命令行下,键入emca -h命令,则可以看到相关的提示信息:C:>emca -hC: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:41EM Configuration Assistant 10.2.0.1.0 正式版版权所有 (c) 2003, 2005, Oracle。保留所有权利。 输入以下信息:数据库 SID: eygle监听程序端口号: 1521SYS 用户的口令:SYSMAN 用户的口令: 是否继续? [yes(Y)/no(N)]: y2007-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=eygleC:>emctl start dbconsoleOC4J 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 recreateEMCA 开始于 2007-1-25 11:18:00EM Configuration Assistant 10.2.0.1.0 正式版版权所有 (c) 2003, 2005, Oracle。保留所有权利。 输入以下信息:数据库 SID: eygle监听程序端口号: 1521SYS 用户的口令:DBSNMP 用户的口令:SYSMAN 用户的口令:SYSMAN 用户的口令: 通知的电子邮件地址 (可选): eygle@eygle.com通知的发件 (SMTP) 服务器 (可选): smtp.hurray.com.cn-----------------------------------------------------------------已指定以下设置数据库 ORACLE_HOME ................ C:oracle10.2.0数据库主机名 ................ gqgai监听程序端口号 ................ 1521数据库 SID ................ eygle通知的电子邮件地址 ............... eygle@eygle.com通知的发件 (SMTP) 服务器 ............... smtp.hurray.com.cn-----------------------------------------------------------------是否继续? [yes(Y)/no(N)]: y2007-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 Control2007-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个,分别是:
可以简单看一下这两个目录的结构,如图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 dbconsoleOracle Enterprise Manager 10g Database Control Release 10.2.0.1.0Copyright (c) 1996, 2005 Oracle Corporation. All rights reserved.http://gqgai:1158/em/console/aboutApplicationStarting Oracle Enterprise Manager 10g Database Control ...OracleDBConsoleeygle 服务正在启动 ................OracleDBConsoleeygle 服务已经启动成功。
关闭服务使用如下命令:
C:>emctl stop dbconsoleOracle Enterprise Manager 10g Database Control Release 10.2.0.1.0Copyright (c) 1996, 2005 Oracle Corporation. All rights reserved.http://gqgai:1158/em/console/aboutApplicationOracleDBConsoleeygle 服务正在停止...............OracleDBConsoleeygle 服务已成功停止。
emctl工具在Windows/linux/UNIX下的用法是一致的,其本质是通过脚本执行一系列的命令来启动EM,具体内容可以直接打开emctl文件查看,在Windows系统上是一个批处理文件,在其他平台一般是一个Shell脚本:
C:>which emctlC:oracle10.2.0bin/emctl.bat