Excerpt from: http://dbtricks.com/?p=34
If you is trying to connect to the Oracle Enterprise Manger and you get the following errors:
Enterprise Manager is not a able to connect to the database instance.
And in the ' Agent connection to instance ' section:
Status:failed
details:ora-28001:the Password has expired (DBD Error:ocisessionbegin)
One of the reasons could be, the password for the Sysman user is expired. However, changing the password alone won't solve this issue. Several additional steps is required in order to make Oracle Enterprise Manager connect:
Before you start:verify that oracle_home, ORACLE_SID environment variables is set. –if not, set them using as environment variables or open a command line and type set oracle_sid=<the database sid>
1. Stop the Dbconsole: emctl stop Dbconsole (DOS and Unix) or using the Windows services Stop the Orcledbconsole <the database Sid>.
2. Connect to the database as a user with DBA privilege with Sql*plus
and run the following command:
Alter user Sysman identified by <the new Password>;
3. Verify that the new password works
sql> Connect sysman/<the new password>
4. Go to Oracle_home/
A) Open the file emoms.properties and search for:
oracle.sysman.eml.mntr.emdreppwd=<some encrypted value>
Replace the encrypted value with the new password value
b) Search for oracle.sysman.eml.mntr.emdreppwdencrypted=true
and change TRUE to FALSE
c) Save and close emoms.properties
5. Restart the Dbconsole:
emctl start Dbconsole (DOS and Unix) or using the Windows services start the Orcledbconsole<the database sid>.
6. Open Emoms.properties again and Search for:
A)oracle.sysman.eml.mntr.emdreppwd=
Verify the password is encrypted
b) oracle.sysman.eml.mntr.emdreppwdencrypted=
Verify that the value was set to TRUE
7. Refresh Oracle Enterprise Manager
What-if Enterprise Manager is not able to connect to the database instance (ORA-28001)