1、停止dbconsole
$ emctl stop dbconsole
查看状态,确认dbconsole已经停止
$ emctl status dbconsole
2、修改sysman用户和dbsnmp用户的密码
$ sqlplus / as sysdba
SQL> alter user sysman identified by xxx;
SQL> alter user dbsnmp identified by yyy;
解锁用户
SQL> alter user sysman account unlock;
SQL> alter user dbsnmp account unlock;
确认密码已修改
SQL> conn sysman/xxx;
Connected.
SQL> conn dbsnmp/yyy;
Connected.
3、修改配置文件
(与sysman相关)
转到$ORACLE_HOME/(host)_(sid)/sysman/config目录下
a. 把emoms.properties另存为emoms.properties.old
b. 修改emoms.properties文件
找到oracle.sysman.eml.mntr.emdRepPwd=把等于后的加密字串替换成刚才更改的密码xxx;
找到oracle.sysman.eml.mntr.emdRepPwdEncrypted=TRUE 把TRUE换成FALSE。
(与dbsnmp相关)
转到$ORACLE_HOME/(host)_(sid)/sysman/emd目录下
$cp targets.xml targets.xml.bak
$vi targets.xml
修改下列代码中:
用新的dbsnmp的密码代替上列password的Value值,ENCRYPTED的值修改成FALSE。
4、重启dbconsole,访问EM恢复正常
$emctl start dbconsole
--转自