content top

When is a Table Populated into the In-Memory Column Store?

I was playing with in-memory feature of Oracle 12c, and wondered when a table is loaded/populated into in-memory buffer (of course I’m talking about a table which is enabled for in-memory). In “the Oracle Database In-Memory blog”, it says Oracle typically populates the table after it has been accessed for the first time. It’s possible to check V$IM_SEGMENTS to see the memory segments of in-memory tables, so we can easily see when the table is populated into the memory. Let’s create a test table and fill it with some data:

Now let’s access the data:

I checked again the V$IM_SEGMENTS:

Read More

Enterprise Manager 12c: Failed Jobs

After I added some database targets to my Enterprise Manager 12c, an incident opened for failed jobs on a newly added database. We have some jobs scheduled to run every 5 minutes on that database, and of course we have some error-handling and alerting mechanism which will notify us if any of them fails, so there shouldn’t be any failed job. I checked run logs of all the scheduler jobs to see if there are any failed runs, and also old-style jobs if there are any broken one. Everything seems OK so I waited Enterprise Manager to pool failed jobs again but the incident stays open. Then I wondered how Enterprise Manager checks the failed jobs. I see that it uses the following query:

So instead of checking if any scheduler job recently failed, it just checks “failure_count” of scheduler jobs. Although those jobs haven’t failed for months, these counters are not reset automatically unless you disable/enable or recreate the job. So I have used DBMS_SCHEDULER.DISABLE and DBMS_SCHEDULER.ENABLE for the jobs which have failed once. It did reset failure_count(s) of the scheduler jobs and the incident is closed automatically.

New EMCLI Verbs in Enterprise Manager 12c R4 (

Today I see Ray Smith’s blog post about EM CLI Verb Changes. He provided a quick list of several new and deprecated EMCLI verbs in Enterprise Manager 12c R4. Pete Sharman commented on the blog post and said there are missing verbs. Ray said he made the list based on Oracle Documentation. So I decided to make another list based on EMCLI HELP output. Here’s the list of new EMCLI verbs:

  • invoke_ws: Invokes EM web service.

Agent Update Verbs:

  • get_agent_update_status: Shows Agent Update Results using Gold Image.
  • get_not_updatable_agents: Shows agents which can not be updated
  • get_updatable_agents: Shows updatable Agents for a given gold agent image name or series
  • update_agents:  performs Agent Update Prereqs and submits Agent Update Job

BI Publisher Reports Verbs:

  • grant_bipublisher_roles: Grants access to the BI Publisher catalog and features.
  • revoke_bipublisher_roles: Revokes access to the BI Publisher catalog and features.

Blackout Verbs:

  • create_rbk: Creates Retro-active blackout on given targets and updates their availability. The retro-active blackout feature needs to be enabled from the UI for using this emcli command.

CFW Verbs:

  • cancel_cloud_service_requests: Cancel the cloud requests. Either user or names option should be provided.
  • delete_cloud_service_instances: Deletes the cloud service instances based on the specified filter.
  • delete_cloud_user_objects: Deletes cloud user objects including cloud service instances and requests.
  • get_cloud_service_instances: Retrieves the list of cloud service instances. All Instances will be printed if no option is specified.
  • get_cloud_service_requests: Retrieves the list of cloud requests. All requests will be printed if no filter is applied.
  • get_cloud_user_objects: Retrieves the list of cloud user objects including cloud service instances & requests. All objects will be printed if user option is not used.

Compliance Verbs:

  • fix_compliance_state: Fix compliance state by removing references in deleted targets.

Deployment Procedure Verbs:

  • get_runtime_data: Download execution runtime properties data. The execution can be retrieved by using either instance GUID, or execution GUID or name value pair.
Read More

Upgrading Enterprise Manager Cloud Control to

Enterprise Manager Cloud Control is released yesterday, and I have downloaded it immediately to upgrade our system. It was a very smooth process. The version of our Enterprise Manager was Enterprise Manager is compatible with agents, so total downtime was about 30 minutes (of course it depends on your hardware). I upgraded our system using “one system upgrade” option and then upgraded all EM agents. Only a few agents are failed to upgrade, and I remember that we also had problems when deploying those agents. In this blog post, I will go through the whole process step by step.

I recommend you to read the official upgrade documentation (Thanks to Brandon to remind me to write this). As a blogger, I share my own experience. I can not guarantee that these steps will work on your environment, so you should always check the official documentation first.

As usual, you can download the new version from Oracle website. You need to download all 3 zip files to your server, create a directory and unzip them all into this directory:

Before you run the installer, we need to prepare our system for upgrading. Run emctl to copy EMKey from emkey.ora file to the management repository database:

Enter weblogic admin password as Admin User’s password and SYSMAN password for EM root password. The EMKey will be copied to the Management Repository (it will be removed automatically by the installer after the upgrade is done). Now shutdown the OMS:

Read More

Enterprise Manager 12c: Be Careful About Naming DB Systems

Yesterday, we added a development database to our EM12c system. About 15 minutes later, the incident management flooded us with alert mails about newly added database. Unfortunately its SID was same with our production DB, and when adding the database, my colleague didn’t change its name and accepted the defaults. I was out of office when I got those mails, after a short panic, I called my colleague to check the situation and she said it’s just the development database. We decided to remove development database from the Enterprise Manager, and add it again with another name.

I went to the target’s home page, clicked remove target under target setup menu. The Enterprise Manager warned me about it will delete the database and its related targets (a Database System). I clicked YES, and my colleague asked me why I removed the production database from Enterprise Manager! As a DBA, we are usually very careful when doing something, and I was sure that I removed the correct database. I checked the databases and saw that both PROD and DEV databases are gone. Of course, we added the production database again quickly, and then I started to investigate the situation. After examining PL/SQL codes of MGMT_ADMIN package, and doing more add-remove tests, I see that it’s all about the DB systems. Here are the records in MGMT_TARGETS_DELETE (it’s a table which is used by EM to store deleted targets):


Read More
Page 1 of 2912345...Last »
content top