不知道是什么原因https://localhost:1158/em,今天突然就不能用了。做了好多搜索也没有解决。现象是在services.msc中,不能重启OracleDBConsole服务,提示:

Oracle11g R2学习系列 之十 解决EM不能用-LMLPHP

这个其实是windows的一个很普通的提示,深层次的帮助是很小的。因为是新手,也不明白原理,所以也只好继续在网上找原因,看到有人建议说用emca -repos drop重置一下,兴冲冲的执行了一下,结果显示如下图:

Oracle11g R2学习系列 之十 解决EM不能用-LMLPHP

显示是正确完整的,但悲剧的是还是没有解决,最后我收到这篇文章 ,受到启发,使用DBCA先删除了orcl数据库。然后新建了一个叫XSCJ.domain的实例,SID为XSCJ.

然后我使用admin运行了cmd.依次执行:

C:\Windows\system32>emca -repos recreate

EMCA 开始于 -- ::
EM Configuration Assistant, 11.2.0.0. 正式版
版权所有 (c) , , Oracle。保留所有权利。 输入以下信息:
数据库 SID: XSCJ
监听程序端口号:
SYS 用户的口令:
SYSMAN 用户的口令: 是否继续? [是(Y)/否(N)]: y
-- :: oracle.sysman.emcp.EMConfig perform
信息: 正在将此操作记录到 C:\oracle11gr2\cfgtoollogs\emca\XSCJ\emca_2013_07_23_22
_21_13.log。
-- :: oracle.sysman.emcp.EMReposConfig invoke
信息: 正在删除 EM 资料档案库 (此操作可能需要一段时间)...
-- :: oracle.sysman.emcp.EMReposConfig invoke
信息: 已成功删除资料档案库
-- :: oracle.sysman.emcp.EMReposConfig createRepository
信息: 正在创建 EM 资料档案库 (此操作可能需要一段时间)...
-- :: oracle.sysman.emcp.EMReposConfig invoke
信息: 已成功创建资料档案库
已成功完成 Enterprise Manager 的配置
EMCA 结束于 -- ::

1,emca -repos recreate

C:\Windows\system32>emca -config dbcontrol db

EMCA 开始于 -- ::
EM Configuration Assistant, 11.2.0.0. 正式版
版权所有 (c) , , Oracle。保留所有权利。 输入以下信息:
数据库 SID: XSCJ
监听程序端口号:
监听程序 ORACLE_HOME [ C:\oracle11gr2\product\11.2.\dbhome_1 ]:
SYS 用户的口令:
DBSNMP 用户的口令:
SYSMAN 用户的口令:
通知的电子邮件地址 (可选):
通知的发件 (SMTP) 服务器 (可选):
----------------------------------------------------------------- 已指定以下设置 数据库 ORACLE_HOME ................ C:\oracle11gr2\product\11.2.\dbhome_1 本地主机名 ................ localhost
监听程序 ORACLE_HOME ................ C:\oracle11gr2\product\11.2.\dbhome_1
监听程序端口号 ................
数据库 SID ................ XSCJ
通知的电子邮件地址 ...............
通知的发件 (SMTP) 服务器 ............... -----------------------------------------------------------------
是否继续? [是(Y)/否(N)]: y
-- :: oracle.sysman.emcp.EMConfig perform
信息: 正在将此操作记录到 C:\oracle11gr2\cfgtoollogs\emca\XSCJ\emca_2013_07_23_22
_30_38.log。
-- :: oracle.sysman.emcp.EMReposConfig uploadConfigDataToRepository 信息: 正在将配置数据上载到 EM 资料档案库 (此操作可能需要一段时间)...
-- :: oracle.sysman.emcp.EMReposConfig invoke
信息: 已成功上载配置数据
-- :: oracle.sysman.emcp.util.DBControlUtil configureSoftwareLib
信息: 软件库已配置成功。
-- :: oracle.sysman.emcp.EMDBPostConfig configureSoftwareLibrary
信息: 正在部署预配档案...
-- :: oracle.sysman.emcp.EMDBPostConfig configureSoftwareLibrary
信息: 预配档案部署成功。
-- :: oracle.sysman.emcp.util.DBControlUtil secureDBConsole
信息: 正在保护 Database Control (此操作可能需要一段时间)...
-- :: oracle.sysman.emcp.util.DBControlUtil secureDBConsole
信息: 已成功保护 Database Control。
-- :: oracle.sysman.emcp.util.DBControlUtil startOMS
信息: 正在启动 Database Control (此操作可能需要一段时间)...
-- :: oracle.sysman.emcp.EMDBPostConfig performConfiguration
信息: 已成功启动 Database Control
-- :: oracle.sysman.emcp.EMDBPostConfig performConfiguration
信息: >>>>>>>>>>> Database Control URL 为 https://localhost:5500/em <<<<<<<<<<<
-- :: oracle.sysman.emcp.EMDBPostConfig invoke
警告:
************************ WARNING ************************ 管理资料档案库已置于安全模式下, 在此模式下将对 Enterprise Manager 数据进行加密。
加密密钥已放置在文件 C:/oracle11gr2/product/11.2./dbhome_1/localhost_XSCJ/sysma
n/config/emkey.ora 中。请务必备份此文件, 因为如果此文件丢失, 则加密数据将不可用
。 ***********************************************************
已成功完成 Enterprise Manager 的配置
EMCA 结束于 -- ::

2,emca -config dbcontrol db

完也之后执行查看一下状态:

C:\Windows\system32>emctl status dbconsole
Oracle Enterprise Manager 11g Database Control Release 11.2.0.1.
Copyright (c) , Oracle Corporation. All rights reserved.
https://localhost:1158/em/console/aboutApplication
Oracle Enterprise Manager 11g is not running.
------------------------------------------------------------------
Logs are generated in directory C:\oracle11gr2\product\11.2.\dbhome_1/localhost
_orcl/sysman/log

3,emctl status dbconsole

发现无效,于是准备手工启动

C:\Windows\system32>emctl start dbconsole
Oracle Enterprise Manager 11g Database Control Release 11.2.0.1.
Copyright (c) , Oracle Corporation. All rights reserved.
https://localhost:1158/em/console/aboutApplication
Starting Oracle Enterprise Manager 11g Database Control ...The OracleDBConsoleor
cl service is starting..............
The OracleDBConsoleorcl service could not be started. A service specific error occurred: . More help is available by typing NET HELPMSG .

emctl start dbconsole

这就奇了怪了,我明明使用的是XSCJ啊,为什么还是那个老的ORCL呢。反正到了这一步,再折腾一下:

C:\Windows\system32>set oracle_hostname=localhost

C:\Windows\system32>set oracle_unqname=xscj

oracle_hostname/unqname

(上面两句很重要。如果关机重来,我想因为我是在命令行中输入的,应该是要重新再做一遍的,至于值是什么 ,可以根据C:\oracle11gr2\product\11.2.0\dbhome_1\localhost_XSCJ这个目录来决定,还有C:\oracle11gr2\product\11.2.0\dbhome_1\oc4j\j2ee\OC4J_DBConsole_localhost_XSCJ这个目录也可以,加粗的部分就是hostname和unqname的值了。)紧接着启动:

C:\Windows\system32>emctl start dbconsole
Oracle Enterprise Manager 11g Database Control Release 11.2.0.1.
Copyright (c) , Oracle Corporation. All rights reserved.
https://localhost:5500/em/console/aboutApplication
- An instance of Oracle Enterprise Manager 11g Database Control is already runn
ing.

看到那个already running. 心里那个激动,迫不及待的在浏览器中输入https://localhost:5500/em,登录页面终于出现了。只是搞不明白为什么端口号变成了5500呢,难道是在那篇文章中看到的那句

emca -config dbcontrol db -DBCONTROL_HTTP_PORT 5508 -AGENT_PORT 3940 -RMI_PORT 5524 -JMS_PORT 5545

但这里没有一处指明是5500啊,Oracle还真是折腾人啊。

这里有位园子里的同学的亲身经历的文章,我照着做也是没有成功。作为参考放在这里吧

04-16 20:03