em的错误          <>


em启动不了,朋友感到是个小问题,在网上找了好多资料都没有对上症状,只好向我告急。

启动em,提示OC4J的一个目录找不到。

/u01/app/oracle/product/10.2.0/db_1/oc4j/j2ee/OC4J_DBConsole_server1_scmdb

这个错误一般是由hostname或者ip改变导致的。检查错误里提示的目录,果然没有这个目录
只有OC4J_DBConsole_localhost.localdomain_scmdb这样一个目录,这个错误以前见过很多,估计是改过主机名导致的。
和工作人员确定,确实前几天修改过主机名,监听和tnsname都相应的修改了,但是没有修改这个。

修改ORACLE_HOSTNAME为localhost.localdomain,这个是常用的手法,

出来新的问题,EM实例可以启动但是
登录不进出,实例,监听和agent都是停止的状态。这里估计也是由于修改hostanme导致的。

重建repository,
emca -deconfig dbcontrol db -repos drop
em出现错误,在错误信息里出现

SEVERE: Error dropping the repository
Mar 22, 2010 10:52:39 PM oracle.sysman.emcp.EMReposConfig invoke
INFO: Refer to the log file at /u01/app/oracle/product/10.2.0/db_1/cfgtoollogs/emca/inthdb/emca_repos_drop_.log for more details.
Mar 22, 2010 10:52:39 PM oracle.sysman.emcp.EMConfig perform
SEVERE: Error dropping the repository
Refer to the log file at /u01/app/oracle/product/10.2.0/db_1/cfgtoollogs/emca/inthdb/emca_2010-03-22_10-52-18-PM.log for more details.
Could not complete the configuration. Refer to the log file at /u01/app/oracle/product/10.2.0/db_1/cfgtoollogs/emca/inthdb/emca_2010-03-22_10-52-18-PM.log for more details.

打开这里的emca_2010-03-22_10-52-18-PM.log

Mar 22, 2010 10:52:39 PM oracle.sysman.emcp.util.PlatformInterface executeCommand
WARNING: Error executing /u01/app/oracle/product/10.2.0/db_1/sysman/admin/emdrep/bin/RepManager -connect (DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=localhost.localdomain)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=inthdb))) -repos_user SYSMAN -action drop -verbose -output_file /u01/app/oracle/product/10.2.0/db_1/cfgtoollogs/emca/inthdb/emca_repos_drop_2010-03-22_10-52-38-PM.log

这里估计是tns连接的问题。hostname改名了,强制用这个而导致错误。
查看listener.ora配置,如上面说说,已经改过了,所以这里locahost连接导致问题

既然如此,那么我们就从根铲起吧
先关闭监听
lsnrctl stop
修改listener.ora
将hostname改成localhost.localdemain
然后启动监听
lsnrctl start

再emca -deconfig dbcontrol db -repos drop
成功删除档案库。

接着关闭监听,
把listener.ora改回来,
再启动监听,以重建repos
emca -config dbcontrol db -repos create

成功。

下面启动dbconsole。连接进去看看实例的状态。 全都都ok了,

Oracle的好多地方都和hostname有关系,这个不知道Oracle为什么不在这里做的更优秀一些。不要和hostname绑定的这么紧密。而使小小的hostanme的修改,带来不可预料的错误。

我们按照好oralce以后,也需要对修改hostname谨慎一些,多考虑到有影响的地方。

你可能感兴趣的:(nbsp)