oracle 10.2.0.5创建EM报错

给客户实施数据库的安装,win2k3_x64+oracle 10.2.0.5,手欠勾选了”创建EM”的选项,结果在创建实例的时候,长时间的停在85%,配置EM的过程点上,最后得到了如下的报错:

————————————————————————————————————-

oracle.sysman.emcp.exception.EMConfigException: 启动 Database Control 时出错
at oracle.sysman.emcp.EMDBPostConfig.performConfiguration(EMDBPostConfig.java:649)
at oracle.sysman.emcp.EMDBPostConfig.invoke(EMDBPostConfig.java:227)
at oracle.sysman.emcp.EMDBPostConfig.invoke(EMDBPostConfig.java:196)
at oracle.sysman.emcp.EMConfig.perform(EMConfig.java:184)
at oracle.sysman.assistants.util.em.EMConfiguration.run(EMConfiguration.java:449)
at java.lang.Thread.run(Thread.java:595)

—————————————————————————————————————

网上找了一圈,发现可能和如下这篇文章的描述类似。本想去metalink上下载相应的patch试试,结果metalink今天例行维护,需要5小时以后才能访问,囧。改天试试吧。

 

My Oracle Support is currently unavailable due to scheduled maintenance.

Maintenance Start Date: Friday, March 30

Maintenance Start Time:

San Francisco Friday 9:00 PM Pacific
Orlando Saturday 12:00 AM Eastern
GMT/UTC Saturday 4:00 AM
London Saturday 5:00 AM
Bangalore Saturday 9:30 AM
Melbourne Saturday 2:00 PM

Duration:  5 hours

Impact: All My Oracle Support users

After the outage, you may need to delete your browsers’ cookies cache and all temporary internet files then close all internet browser windows.

If you have an urgent issue please call your local support center. Click here for a list of Oracle Support phone numbers. Click here for a list of CRM On Demand Support phone numbers.

Thank you in advance for your patience, and we apologize for any inconvenience.

The My Oracle Support Team

———————————————转载———————————————————————–

x64安装oracle 10.2.0.4无法启动em dbconsole问题解决

在一台windows 2003 r2 x64上安装oracle 10g 10.2.0.4,采用默认安装方式,安装进度到85%时出现错误提示窗口

“由于以下错误,Enterprise Manager配置失败 – 启动Database Control时出错 有关详细资料,请参阅E:oracleproduct10.2.0db_1cfgtoollogsdbcaorcl emConfig.log中的日志文件。您可以以后通过手动运行E:oracleproduct10.2.0db_1bindmca脚本, 重新使用Enterprise Manager配置此数据库。”

日志%ORACLE_HOME%cfgtoollogsdbcaorclemConfig.log输出:

配置: Waiting for service ‘OracleDBConsoleorcl’ to fully start
2011-2-22 10:37:15 oracle.sysman.emcp.util.PlatformInterface serviceCommand
配置: Initialization failure for service during start
2011-2-22 10:37:15 oracle.sysman.emcp.EMConfig perform
严重: 启动 Database Control 时出错
有关详细资料, 请参阅 E:oracleproduct10.2.0db_1cfgtoollogsdbcaorclemConfig.log 中的日志文件。
2011-2-22 10:37:15 oracle.sysman.emcp.EMConfig perform
配置: Stack Trace:
oracle.sysman.emcp.exception.EMConfigException: 启动 Database Control 时出错
at oracle.sysman.emcp.EMDBPostConfig.performConfiguration(EMDBPostConfig.java:646)
at oracle.sysman.emcp.EMDBPostConfig.invoke(EMDBPostConfig.java:224)
at oracle.sysman.emcp.EMDBPostConfig.invoke(EMDBPostConfig.java:193)
at oracle.sysman.emcp.EMConfig.perform(EMConfig.java:184)
at oracle.sysman.assistants.util.em.EMConfiguration.run(EMConfiguration.java:436)
at java.lang.Thread.run(Thread.java:595)

trace文件%ORACLE_HOME%<HOSTNAME>_<SID>sysmanlogemagent.trc输出:

2011-02-22 10:29:51 Thread-3068 ERROR util.files: ERROR: nmeufis_new: failed in lfiopn on file: E:oracleproduct10.2.0db_1dbserver1_orclsysmanemdagntstmp.txt. error = 0 (No error)
2011-02-22 10:29:51 Thread-3068 ERROR ssl: Open wallet failed, ret = 28750
2011-02-22 10:29:51 Thread-3068 ERROR ssl: nmehlenv_openWallet failed
2011-02-22 10:29:51 Thread-3068 ERROR http: 660: Unable to initialize ssl connection with server, aborting connection attempt
2011-02-22 10:29:51 Thread-3068 ERROR pingManager: nmepm_pingReposURL: Cannot connect to https://dbserver1:1158/em/upload/: retStatus=-1

经查询,此问题是由于enterprise manager database control组件的跟CA证书授权过期造成的,其证书到期日为2010年12月31日,2011年安装此版本数据库都会出现这个问题,官方的解决方案是打Patch 8350262

单实例数据库应用此patch的方法如下:

1、安装或者升级数据库到10.2.0.4过程中忽略此错误继续安装,数据库的创建不受影响。
2、使用opatch把此补丁应用到oracle安装
设置ORACLE_HOME和ORACLE_SID系统环境变量,将%ORACLE_HOME%opatch加入PATH环境变量,将patch 8350262解压缩,打开cmd窗口,进入解压缩后目录,执行
cmd>opatch apply
完成后检查%ORACLE_HOME%cfgtoollogsopatch目录下生成的日志文件确认安装patch是否成功。
3、应用patch成功后,重新配置em dbconsole
cmd>emctl secure dbconsole -reset
根据提示输入管理员密码,然后会有两次确认请求,两次都是输入大写的Y
4、重新启动dbconsole
cmd>emctl start dbconsole

当然,如果不使用enterprise manager database control这个组件的话,那么可以不用理会这个错误,不打这个patch。