Configure Enterprise Manager DB Console for Oracle Applications RAC database
When you use EMCA to configure Database Control for Oracle RAC, you configure the Database Control for each instance in the cluster. However, by default, the Database Control Console will only start on the local node. On every other node of the cluster, only the Enterprise Manager agent will start.
The Database Control Console is only started on the local node. On every other node, the commands emctl start dbconsole and emctl stop dbconsole only start and stop the agent. Each of the remote agents will upload their respective data to the console running on the local node, from where you can monitor and manage all the targets in the cluster. On each instance of the RAC database, the following subdirectories will be created:
$ORACLE_HOME/hostname1.domainname_SID1
$ORACLE_HOME/hostname2.domainname_SID2
Use the operating system command line to configure Database Control.
cd $ORACLE_HOME/bin
./emca -config dbcontrol db -repos create -cluster
Note: When you configure Database Control using EMCA, the database may become unavailable and users may not be able to connect to the database or perform operations on the database.
To configure Enterprise Manager for a newly added node of a cluster, enter the following command:
$ emca -addNode db
Unlock the SYSMAN and DBSNMP accounts.
Change the password of DBSNMP accounts.
To change the password of the user DBSNMP you must strictly follow the steps below, otherwise the 10g or 11g DB Control used to manage your database will not function properly.
Note: For DB Control Release 10.2.0.3 and higher installed on Windows 2008 / Vista, emctl commands may fail with the error "Permission Denied". Please consult the note below to fix this error:
Document 1164293.1 - Executing Any EMCTL Command on Windows 2008 / Vista Returns "Permission denied" Error
Stop the standalone dbconsole
$ export ORACLE_SID=
$ emctl stop dbconsole
On Unix - DB Control Release 11.2.x and higher
$ export ORACLE_SID=
$ export ORACLE_UNQNAME=
$ emctl stop dbconsole
Check that the DB Control is stopped
On Unix
$ emctl status dbconsole
Connect to the database as a user with DBA privilege with SQL*Plus and execute
SQL> alter user dbsnmp identified by ;
Check the new password
SQL> connect dbsnmp/[@database_alias]
Go to $ORACLE_HOME/host_sid/sysman/emd
Save the file targets.xml to targets.xml.orig
Edit the file targets.xml with your favorite text editor
Search for the line:
Replace the encrypted value by the new password value
Replace TRUE by FALSE
Restart the standalone dbconsole
On Unix - DB Control Release up to 11.1.x
$ export ORACLE_SID=
$ emctl start dbconsole
On Unix - DB Control Release 11.2.x and higher
$ export ORACLE_SID=
$ export ORACLE_UNQNAME=
$ emctl start dbconsole
Check that the password has been encrypted
Edit the file targets.xml
Search for the line:
Check that the password VALUE is encrypted
Check that the value of ENCRYPTED is TRUE
Note: In case of RAC DB, the dbsnmp password should be changed in targets.xml not only for instances(oracle_database), but also for rac_database target.
The file targets.xml needs to be updated on all the RAC Cluster nodes.
Check the status of agent in each nodes:
$ emctl status agent
Now try to login to the Enterprise Manager console URL using DBSNMP user. For example:
http://hostname.domain:1150/em/console
Reference:
How to Change DBSNMP Password in Database 10g and 11g Monitored by DB Control [ID 259387.1]
How To Change the Password of the Database User Sysman (DB Control Repository Schema) [ID 259379.1]