前提:在win7 professional 版上安装oracle 11g 后,在数据库进行自动配置时,提示协议出错,当时也没管他,就直接点退出了。启动oracle 的相关服务进程,进入sql plus,执行相关操作,一切正常,但当要进入OEM 时,系统提示找不到相应页面。初步估计就是当时配置时协议出错后没有继续完成OEM 的原因造成的。

    动作:

     启动ie, 输入 https://localhost:1158/em/, 显示如下图所示错误:   

调试ORACLE 11G OEM  

     根据安装时所报的错误,暂定为em 没有完成配置,手动进行重新配置。为确保配置环境的干净,先对em 档案库进行删除:

   a. 进入 cmd, 启动 command line 命令窗口;

   b. 输入 emca -deconfig dbcontrol db -repos drop,出现如下页面:

调试ORACLE 11G OEM

   c. 输入对应的 SID以及提示的信息,结果如下:

调试ORACLE 11G OEM

  从日志信息可以看到,确实是 EM 没有进行相关配置;

  d. 从新创建 em 档案,使用下面的命令:

     emca -config dbcontrol db -repos create

   根据提示,输入对应的信息,等待系统完成配置,结果如下:

调试ORACLE 11G OEM

  e. 从日志文件可以看出,创建失败,打开日志文件,报的错误是:SYSMAN 用户已经存在;

  f. 执行以下操作:

          Logon SQLPLUS as user SYS or SYSTEM, and drop the sysman account and management objects:

                  SQL> drop user sysman cascade;
                  SQL> drop role MGMT_USER;
                  SQL> drop user MGMT_VIEW cascade;
                  SQL> drop public synonym MGMT_TARGET_BLACKOUTS;
                  SQL> drop public synonym SETEMVIEWUSERCONTEXT;

g. 重新运行命令创建资料库,仍旧出错,查看日志发现错误日志为:

     ORA-00955: name is already used by an existing object

   这是由于同义词重复的原因造成,将提示的同义词进行删除,然后再次运行,直至系统提示创建配置成功!

h. 再次进入 oem,也就可以打开了!

 总结:安装时出现的协议问题直接影响到oem 是可以解释的通的。遇到此类问题时,如果是新装就的机器建议重新卸载安装,上面提到的这种排错方式,事实上很浪费时间,特别是删除重复的同义词时,要想批量删除,只能编写相关的存储脚本,当然也可以用batch命令的形式完成,如果手动删除的话,那将是一件非常头疼的事情,故此安装完oracle 后一定要检查相应的日志文件,确保相关的组件服务都是安装正常的,否则调试修复是件痛苦的事情。