EMCLI: Add a Database Target with Specific DB System Name

On Oracle Community forum, I’ve seen a good question about using EMCLI to add targets. The forum user says that they decided to name the database targets with combining db_name and hostname. As you may know, when you add a database target, EM also creates a database system for the new target (or assign it with an existing one). The new database system’s name is generated by adding “_sys” to the database target name. Let’s we add a database target named TEST, EM will create a database system as TEST_sys. If we name our database target as “TEST_test.gokhanatil.com”, EM will create a database system named “TEST_test.gokhanatil.com_sys”.

In my personal opinion, Enterprise Manager provides enough flexibility to report these information so I wouldn’t use this kind of naming system but that’s not the point. As you see, it works well for stand alone databases but when you add a standby database to this system, it becomes confusing. For example, your TESTSTBY_stby.gokhanatil.com will be part of TEST_test.gokhanatil.com_sys. So the forum user asks if we can give a specific name to the database system instead of default naming. For example, our database system will be named as TEST_sys although its members are TEST_test.gokhanatil.com and TESTSTBY_stby.gokhanatil.com.

EM13c: OMSCA Recovery Mode Parameters “-as” and “-ms”

In the official backup and recovery documents of Oracle Enterprise Manager Cloud Control, when omsca tool is used for recovery, it is used with “-as” and “-ms” parameters but they are not well documented. For example:

[box type=”shadow”]Run omsca in recovery mode specifying the export file taken earlier to configure the OMS:

<OMS_HOME>/bin/omsca recover –as –ms –nostart –backup_file <exportconfig file>[/box]

Some parameters have no need any explanation but what are “-as” and “-ms”? Can we use them separately?

-AS means we want to recover the “OMS weblogic admin server”. The admin server operates as the central control entity for the configuration of the entire Enterprise Manager domain.

-MS means we want to recover the managed server hosting Oracle Management Service (OMS). It’s a mandatory parameter for recovery operations!

It’s possible to recover managed servers without recovering admin server of EM13c. For example, if you have Multi OMS site and lost one of your additional OMS, you can recover it with “-ms” parameter.

If you need to recover admin server, you also need to recover the managed server on the host, so you should use “-as” and “-ms” parameters together.

EM13c: SQL Monitoring Raises ORA-06553

After I have installed the EM13c R2, I noticed that I couldn’t access the SQL Monitoring page. I tested the SQL monitoring page for 11g to 12c database targets, and it gave the same error: ORA-06553: PLS-306: wrong number or types of arguments in call to ‘REPORT_SQL_MONITOR_LIST’. As you can guess I hit a bug, good thing is someone else already raised a service request and Oracle released Patch 24914115 to fix the bug. When I examined the patch, I saw that it’s also released for DB Plugin (OMS) 12.1.0.8.161031 Bundle. So if you applied this 161031 bundle for EM13 R1, you probably have the same bug, and you need to apply the patch.

I was planning to say a few words about the poor testing of EM13c releases, but I’m sure everyone already knows it, so I’ll just tell how I applied the Patch 24914115.

First of all, we need to update OPatch (in the Middleware Home) and OMSPatcher. To update OPatch, go to the Patch 6880880, and pick 13.9 release. It’s the OPatch for Enterprise Manager. I don’t think that Oracle Database will have 13.9 release so it seems 13.9 is reserved for Enterprise Manager 13c.

OPatch 13.9 is a different than previous OPatch releases. It comes with an installer. Download “p6880880_139000_Generic.zip”, unzip it to a temporary directory. You’ll see a file named “opatch_generic.jar”. Using JDK of Oracle Middleware Home, run the jar file:

EM13c: Unauthorized Access to Performance Pages

I noticed an interesting security problem (exploit?) on Oracle Enterprise Manager Cloud Control 13cR2 (I tested on EM13cR1 and it also exists on there). When you create an Enterprise Manager administrator, you need to grant some special privileges to that administrator if you want them to access the performance pages, but it seems there’s an alternative way to access the performance pages without requiring extra privileges.

Let’s say I created a new administrator with default roles (EM_USER and PUBLIC), and granted “Connect Target Read-only” for a target “RAC database”. I also granted access to a named credential or shared database login credentials.

performancemenu

EM13c: Get List of URLs Monitored by Beacons

When you need to monitor web services, you can use EM beacons. A beacon is a target that allows the EM Agent to remotely monitor services. You can add beacons to any EM agent using “Add Non-Host Targets by Specifying Target Monitoring Properties” option in the Add Targets Manually page. After adding a beacon, you can configure it to fetch a web page and test the status of the service according to the result of the web transaction.

One of my blog reader said that they have a list of URLs and they need to know which beacon server is polling each URL by querying the URL. We need to query four views to get this information: mgmt_targets, mgmt_bcn_target, mgmt_bcn_step_defn, mgmt_bcn_step_props.