Oracle 10g 以上密碼失效問(wèn)題
Oracle em無(wú)法登錄,我自己遇到的問(wèn)題總結(jié)如下:
其中有兩個(gè)用戶(hù)可能密碼失效
1、 sysman
2、 dbsnmp
SYSMAN和DBSNMP跟涉及到Oracle的EM,所以跟其他的用戶(hù)修改密碼方式有所區(qū)別。
DBSNMP是Oracle數(shù)據(jù)庫(kù)中用于智能代理(Intelligent Agent)的用戶(hù),用來(lái)監(jiān)控和管理數(shù)據(jù)庫(kù)相關(guān)性能的用戶(hù),如果停止該用戶(hù),則無(wú)法提取相關(guān)的數(shù)據(jù)信息;-
SYSMAN是Oracle數(shù)據(jù)庫(kù)中用于EM管理的用戶(hù),如果你不用該用戶(hù),也可以刪除;
首先,以SYS DBA身份進(jìn)入sqlpuls
打開(kāi)sqlpuls
SQL->sqlplus /nolog
SQL->sys / as sysdba
登錄成功以后查詢(xún)DBA用戶(hù)狀態(tài)
SQL->select username,account_status from dba_users;
查看其中常用的用戶(hù)狀態(tài)是否是EXPIRED 還是LOCKED
有的是LOCKED<TIME>
如果sysman狀態(tài)是過(guò)期,修改密碼方法:
1、執(zhí)行emctl stop dbconsole
使用下面的命令來(lái)檢查是否缺失停止了:
emctl status dbconsole
確認(rèn)停止以后就可以在sqlpuls里改密碼了
2、執(zhí)行下面的命令修改sysman密碼:
SQL->alter user sysman identified by <你要改的密碼>;
不過(guò)首先你得確認(rèn)一下sysman是否被鎖定,就是執(zhí)行
SQL->select username,account_status from dba_users;
看sysman的狀態(tài),如果是LOCKED,那么你先得解鎖:
SQL->alter user sysman account unlock;
解鎖完成后再修改密碼,或者修改后再解鎖都行,步驟可以顛倒,但是絕對(duì)不能少。
修改完成后
SQL->connect sysman/密碼
如果連接成功就可以進(jìn)行下一步了。
3、修改emoms.properties
在路徑 Oracle_HOME\[HOST]_[SID]\sysman\config下
找到文件后編輯以下兩句:
Oracle.sysman.eml.mntr.emdRepPwd= [Your encrypted password]
Oracle.sysman.eml.mntr.emdRepPwdEncrypted=True
找到后把[Your encrypted password]改成你這個(gè)用戶(hù)要改的密碼(明文),然后把下面的True改成False.
4、重新啟動(dòng)dbConsole
emctl start dbconsole
啟動(dòng)后你再到emoms.properties里看,是不是密碼給你加密了,而且emdRepPwdEncrypted變成了True!
如果用戶(hù)dbsnmp也失效的話(huà),同樣的辦法,先停止dbconsole和agent然后在sqlplus里確保他的狀態(tài)是open,修改密碼,然后再去文件中改,不過(guò)這次文件不一樣,變成了targets.xml ,它的路徑在
Oracle_HOME\[HOST]_[SID]\sysman\emd
修改以下行:
<Property NAME="password" VALUE="<[Your encrypted password]>" ENCRYPTED="TRUE"/>
同樣把<[Your encrypted password]>改成你要改的密碼,把后面的TRUE改成FALSE,保存。重新啟動(dòng)dbconsole
本文出自:億恩科技【1tcdy.com】
服務(wù)器租用/服務(wù)器托管中國(guó)五強(qiáng)!虛擬主機(jī)域名注冊(cè)頂級(jí)提供商!15年品質(zhì)保障!--億恩科技[ENKJ.COM]
|