oracle 10g EM登录后提示“数据库状态当前不可用可能是因为数据库的状态为装载或不装载”


创建数据库过程中更改了sys,system等密码后,EM可以正常登录,但是登录后提示“数据库状态当前不可用。可能是因为数据库的状态为装载或不装载。单击 '启动' 可以获得当前状态并打开数据库。如果无法打开数据库, 单击 '执行恢复' 可执行相应的恢复操作。”


  
解决方法如下:
 
1、停止dbconsole
    [oracle@star~]$ emctl stop dbconsole
    查看状态,确认dbconsole已经停止

    [oracle@star~]$ emctl status dbconsole


**如果执行emctl stop dbconsole

报错:Environment variable ORACLE_SID not defined. Please define it.

则执行:set ORACLE_SID=数据库名

 
2、修改sysman用户的密码,我把密码改成oracle123
    [oracle@star~]$ sqlplus / as sysdba
    SQL> alter user sysman identified by oracle123;
 
    解锁用户:
    SQL> alter user sysman account unlock;
 
    确认密码已修改:
    SQL> conn sysman/oracle123@csc
    Connected. 
 
3、转到$ORACLE_HOME/host_sid/sysman/config目录下
    a. 把emoms.properties另存为emoms.properties.old
    b. 修改emoms.properties文件
    找到oracle.sysman.eml.mntr.emdRepPwd=把等于后的加密字串替换成刚才更改的密码oracle123;
    找到oracle.sysman.eml.mntr.emdRepPwdEncrypted=TRUE 把TRUE换成FALSE。
 
4、重启dbconsole,访问EM恢复正常
    [oracle@star~]$ emctl start dbconsole
 
在此登录http://loclahost:5500/em,提示让输入用户名密码。
至此,恢复正常。

posted @ 2013-03-28 20:09  javawebsoa  Views(250)  Comments(0Edit  收藏  举报