Oracle Enterprise Manager DB Console is a somewhat independent software but attached under Oracle database. For some reasons, sometimes it cannot be started, or it can be started but show a piece of message like this:
The database status is currently unavailable. It is possible that the database is in mount or nomount state. Click 'Startup' to obtain the current status and open the database. If the database cannot be opened, click 'Perform Recovery' to perform an appropriate recovery operation.
Let's see the screen shot of the problem.
Apparently, we know the database is open and accessible, why EM dbconsole cannot connect the database? Since EM dbconsole access database via SYSMAN account, there are something happened with the account. There are three possibilities:
1. SYSMAN login failed due to wrong password.
The password could be changed after EM has been installed. Since the password of SYSMAN is stored in EM properties file and separate from database. EM knows nothing about password changing.
2. SYSMAN login failed due to expired password.
Password could be expired due to security policy. Just reset the password with original password.
3. SYSMAN is locked.
Unlock the account.Let's check its status.
SQL> SELECT username, account_status FROM dba_users WHERE username='SYSMAN';
USERNAME ACCOUNT_STATUS
------------------------------ --------------------------------
SYSMAN EXPIRED
"EXPIRED" is easy to solve by reset his password, if it is "EXPIRED & LOCK", you should unlock the account first.
SQL> alter user sysman account unlock;
User altered.
Then, reset the password to original password.
SQL> alter user sysman identified by original_password;
User altered.
To see the result by refresh EM dbconsole page, it works and shows the login page for you.