ORA-01017: invalid username /password;logon denied
但是在EM 10G(Grid Control and DB Control)中卻解決不了問題, 因為有其他的設定檔需要修改.
原文: http://blog.itpub.net/post/493/15071
方法如下:
一 Grid Control
假如在安裝過程中我給SYSMAN使用者佈建的密碼是
mybmw530i, 現在我想修改成 mybmw745i,
應該怎麼辦呢?
Step 1: 在SQLPLUS中修改密碼
SQL> conn sys/xxx as sysdba;
SQL> alter user SYSMAN identified by mybmw745i;
如果還出現過ORA-28000 error (account is unlocked),
將帳號解鎖就可以了(加上account unlock子句)
Step 2: 修改emoms.properties檔案
這個檔案所在的目錄是$ORACLE_HOME/sysman/config.
找到下面兩行:
oracle.sysman.eml.mntr.emdRepPwd= ...
oracle.sysman.eml.mntr.emdRepPwdEncrypted=TRUE
OMS啟動時,會將SYSMAN使用者的口令加密後且存放在這個
檔案. 因此,我們需要將它解密,並且重新設定密碼.
oracle.sysman.eml.mntr.emdRepPwd= mybmw745i
oracle.sysman.eml.mntr.emdRepPwdEncrypted=FALSE
Step 3: 修改targets.xml檔案
在下面的兩個目錄都會發現這個檔案:
$OMS_HOME/sysman/config
$AGENT_HOME/sysman/config
顯然,我們應該修改後一個檔案. 因為agent會檢測目標主機上
所有的target,並且將資訊存入這個檔案.
開啟這個檔案,找到下面的部分:
<Target TYPE="oracle_emrep"
NAME="Management Services and Repository" VERSION="1.0">
...
<Property NAME="UserName" VALUE="xxx" ENCRYPTED="TRUE"/>
<Property NAME="password" VALUE="xxx" ENCRYPTED="TRUE"/>
</Target>
修改成:
<Property NAME="UserName" VALUE="SYSMAN" ENCRYPTED="FALSE"/>
<Property NAME="password" VALUE="mybmw745i" ENCRYPTED="FALSE"/>
Step 4: 重新啟動OMS和agent.
二 DB Control
基本修改方式同上. 只是targets.xml的路徑
變成了$ORACLE_HOME/hostname_sid/sysman/emd.
三 說明
1. 如果 dbsnmp的密碼也做了修改,同樣需要修改上面提到的兩個設定檔;
2. 直接運行emca這個命令列指令碼也能完成修改.