Tag Archives: Oracle Enterprise Manager

“A service specific error occurred: 2” when trying to start dbconsole

When logging in to database control after some time you may get a message that some accounts’ passwords need to be changed (sysman, system etc..).  A page will be displayed allowing you to change those password but if something (like timeout) happens during the page processing you will not be able to log in again to the database control and change the passwords.

usually, to solve you should restart the dbconsole by opening the command prompt and typing emctl stop dbconsole. However, you may find that the service is no longer running. Trying to start the dbconsole by typing emctl start dbconsole in the command prompt will result in the following message:

The OracleDBConsole[ServiceName] service could not be started.

A service specific error occurred: 2.

More help is available by typing NET HELPMSG 3547.

as expected, typing NET HELPMSG will not provide usefull information.

To solve this:

1) Delete and recreate the Enterprise Manager agent.

In the command prompt type> emca -deconfig dbcontrol db

even if this fails, type> emca -config dbcontrol db

You will be asked to provide the database SID, the listener port, password for SYS, DBSNMP and SYSMAN accounts, and some optional settings.

This process will run for several minutes.

2) restart the dbconsole

> emctl stop dbconsole

> emctl start dbconsole

This should solve the issue, however, if you are still unable to log in or you get the following error:

ORA-28001: the password has expired (DBD ERROR: OCISessionBegin), make sure that the SYSMAN account is unlocked

SQL> conn / as sysdba
Connected.
SQL> alter user sysman identified by [new password]
2  /

User altered.
SQL> alter user sysman account unlock;

User altered.
SQL> exit

> emctl stop dbconsole

> emctl start dbconsole

if you still have problems logging in to database control, refer to the following post

What to do when Enterprise Manager is not able to connect to the database instance.

Oracle enterprise manager is not accepting host logon credentials

When trying to perform backup and other operations using the Oracle enterprise manager, The Oracle Enterprise manager asks you for the host credentials (operating system login). You may get the following error even if you are sure that you provided the correct credentials:

Validation Error
Examine and correct the following errors, then retry the operation:
ERROR: Wrong password for user

To solve this, you need to give the user you are trying to connect with the privilege, “Logon as batch job”.
on windows, go to
Administrative Tools –>
Local Security Policy –>
Security Settings  –>
Local Policies –>
User Rights Assignments –>
Double click “Log on as batch job” and add the user.

What to do when Enterprise Manager is not able to connect to the database instance (ORA-28001)

If you are trying to connect to the Oracle enterprise Manger and you get the following errors:

Enterprise Manager is not 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 that the password for the SYSMAN user is expired. However, changing the password alone will not solve this issue. Several additional steps are required in order to make Oracle Enterprise Manager connect:

Before you start: Verify that ORACLE_HOME, ORACLE_SID environment variables are 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/<HostName_SID>/sysman/config and save a backup of the emoms.properties file.

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  that the password is encrypted

b) oracle.sysman.eml.mntr.emdRepPwdEncrypted=
verify  that the value is set to  TRUE

7. Refresh Oracle Enterprise Manager