今天不知道哪根筋搭歪了,看着Oracle EM控制台的主机名WIN-LOSGI0TCOG0乱七八糟的很不爽,就把它给改了。然后Oracle EM就上不去了,Oracledbconsole服务起不来,我尝试把所有“WIN-LOSGI0TCOG0”替换成“ggsjy”,找了好多改了好多还是没效果(本来是为了方便,想不到时给自己带来麻烦——!)。综合网上资料,又摆弄了不少时间,终于解决了这个不太智能的问题。
-----------------------------------------------------------------------------------
问题代码:
Microsoft Windows [版本 6.1.7600]
版权所有 (c) 2009 Microsoft Corporation。保留所有权利。
C:\Users\Administrator>hostname
ggsjy
C:\Users\Administrator>emctl start dbconsole
Environment variable ORACLE_SID not defined. Please define it.
C:\Users\Administrator>set ORACLE_SID=orcl
C:\Users\Administrator>emctl start dbconsole
OC4J Configuration issue. D:\oracle\product\10.2.0\db_1/oc4j/j2ee/OC4J_DBConsole
_172.24.34.191_orcl not found.
C:\Users\Administrator>emctl start dbconsole
Oracle Enterprise Manager 10g Database Control Release 10.2.0.1.0
Copyright (c) 1996, 2006 Oracle Corporation. All rights reserved.
Starting Oracle Enterprise Manager 10g Database Control ...OracleDBConsoleorcl
服务正在启动 .
OracleDBConsoleorcl 服务无法启动。
系统出错。
发生系统错误 3。
系统找不到指定的路径。
-----------------------------------------------------------------------------------
解决方案:
C:\Users\Administrator>sqlplus /nolog
SQL*Plus: Release 10.2.0.3.0 - Production on 星期五 9月 24 18:29:07 2010
Copyright (c) 1982, 2006, Oracle. All Rights Reserved.
SQL> conn sys as sysdba
输入口令:
已连接。
SQL> drop public synonym setemviewusercontext;
同义词已删除。
SQL> drop public synonym mgmt_target_blackouts;
同义词已删除。
SQL> drop role mgmt_user;
角色已删除。
SQL> drop user mgmt_view cascade;
用户已删除。
SQL> drop user sysman cascade;
用户已删除。
SQL> exit
从 Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - Production
With the Partitioning, OLAP and Data Mining options 断开
C:\Users\Administrator>emca -config dbcontrol db -repos create
EMCA 开始于 2010-9-24 20:10:10
EM Configuration Assistant, 10.2.0.1.0 正式版
版权所有 (c) 2003, 2005, Oracle。保留所有权利。
输入以下信息:
数据库 SID: orcl
已为数据库 orcl 配置了 Database Control
您已选择配置 Database Control, 以便管理数据库 orcl
此操作将移去现有配置和默认设置, 并重新执行配置
是否继续? [yes(Y)/no(N)]: y
监听程序端口号: 1521
SYS 用户的口令:
DBSNMP 用户的口令:
SYSMAN 用户的口令:
SYSMAN 用户的口令: 通知的电子邮件地址 (可选):
通知的发件 (SMTP) 服务器 (可选):
-----------------------------------------------------------------
已指定以下设置
数据库 ORACLE_HOME ................ D:\oracle\product\10.2.0\db_1
数据库主机名 ................ ggsjy
监听程序端口号 ................ 1521
数据库 SID ................ orcl
通知的电子邮件地址 ...............
通知的发件 (SMTP) 服务器 ...............
-----------------------------------------------------------------
是否继续? [yes(Y)/no(N)]: y
2010-9-24 20:11:21 oracle.sysman.emcp.EMConfig perform
信息: 正在将此操作记录到 D:\oracle\product\10.2.0\db_1\cfgtoollogs\emca\orcl\emc
a_2010-09-24_08-10-10-下午.log。
2010-9-24 20:11:30 oracle.sysman.emcp.util.DBControlUtil stopOMS
信息: 正在停止 Database Control (此操作可能需要一段时间)...
2010-9-24 20:11:35 oracle.sysman.emcp.EMReposConfig createRepository
信息: 正在创建 EM 资料档案库 (此操作可能需要一段时间)...
2010-9-24 20:13:36 oracle.sysman.emcp.EMReposConfig invoke
信息: 已成功创建资料档案库
2010-9-24 20:13:47 oracle.sysman.emcp.util.DBControlUtil startOMS
信息: 正在启动 Database Control (此操作可能需要一段时间)...
2010-9-24 20:14:27 oracle.sysman.emcp.EMDBPostConfig performConfiguration
信息: 已成功启动 Database Control
2010-9-24 20:14:27 oracle.sysman.emcp.EMDBPostConfig performConfiguration
信息: >>>>>>>>>>> Database Control URL 为<<<<<<<<<<<
已成功完成 Enterprise Manager 的配置
EMCA 结束于 2010-9-24 20:14:27
C:\Users\Administrator>emctl status dbconsole
Oracle Enterprise Manager 10g Database Control Release 10.2.0.1.0
Copyright (c) 1996, 2006 Oracle Corporation. All rights reserved.
Oracle Enterprise Manager 10g is running.
------------------------------------------------------------------
Logs are generated in directory D:\oracle\product\10.2.0\db_1/ggsjy_orcl/sysman/
log
-----------------------------------------------------------------------------------
总结:
Oracle emca dbconsole手动创建步骤:
1,修改DBSNMP密码:
重新配置DBCONSOLE,需要输入DBSNMP密码,但任何密码都会显示错误,需要预先修改。
sql>alter user dbsnmp identified by xxx;
2,删除早期DBCONSOLE创建的用户:
sql>drop role MGMT_USER;
sql>drop user MGMT_VIEW cascade;
sql>drop user sysman cascade;
3,删除早期DBCONSOLE创建的对象:
sql>drop PUBLIC SYNONYM MGMT_TARGET_BLACKOUTS;
sql>drop public synonym SETEMVIEWUSERCONTEXT;
4,重新创建DBCONSOLE:(如果是在windows下,要先到注册表删除DBCONSOLE的服务,重启电脑)
$emca -config dbcontrol db -repos create
根据提示,先输入SID,再输入Y继续;
输入端口1521,输入SYS密码,输入DBSNMP密码,输入SYSMAN 密码,输入Y继续
-------------------------------------------
常用emca配置命令:
OEM常用的命令,及实例步骤.
创建一个EM资料库
emca -repos create
重建一个EM资料库
emca -repos recreate
删除一个EM资料库
emca -repos drop
配置数据库的Database Control
emca -config dbcontrol db
删除数据库的Database Control配置
emca -deconfig dbcontrol db
重新配置db control的端口,默认端口在1158
emca -reconfig ports
emca -reconfig ports -dbcontrol_http_port 1160
emca -reconfig ports -agent_port 3940
先设置ORACLE_SID环境变量后,启动EM console服务
emctl start dbconsole
先设置ORACLE_SID环境变量后,停止EM console服务
emctl stop dbconsole
先设置ORACLE_SID环境变量后,查看EM console服务的状态
emctl status dbconsole
配置dbconsole的步骤
emca -repos create
emca -config dbcontrol db
emctl start dbconsole
重新配置dbconsole的步骤
emca -repos drop
emca -repos create
emca -config dbcontrol db
emctl start dbconsole
---------------------------------------
参考链接: