oracle.sysman.emSDK.emd.comm.OperationException: could not write to targets.xml.bak file

I had some trouble adding a new database to an OEM Grid installation this weekend.

I didn't find too many references to the above error so I wanted to post about it here. Of course Metalink was all doom and gloom. Note 745795.1 says to stop the agent, run fsck on the AGENT_HOME filesystem, then start the agent. After that you should be able to add new targets.

targets.xml lives in AGENT_HOME/sysman/emd. At the OS prompt I changed to that directory I was able to create new files there but for some reason the above error kept popping up when Grid tried to save a new target.

For Developers: Making Friends with the Oracle Database - presentation by Cary Millsap

Here is a link to a Cary Millsap presentation -- a must read for developers who interact with Oracle Databases. This article can save you some time and heartache!

From the Abstract:

PuTTY Helper

PuTTY is a free implementation of Telnet and SSH for Win32 and Unix platforms along with an xterm terminal emulator. It is one of my must-have utilities that I use when administrating Unix boxes. If you are using PuTTY on Windows you should check out PuTTY Session Manager. It is a utility that acts as a 'Launcher' for PuTTY sessions. It reads your configured saved sessions and allows you to organize them into folders and launch multiple PuTTY sessions at once. You can download the latest version of PuTTY Session Manager here:

Is Intermedia in use?

When copying or moving databases it is nice to know if features are used or not. Sure you can always query DBA_REGISTRY to see what has been set up on the source databases, but is it always necessary to install everything that shows up in DBA_REGISTRY on your target systems? Intermedia is a feature that can be a particular pain to install and configure.

Left WordPress in the dust...

You may notice a new look. I left WordPress in the dust and have adopted Drupal Content Management software. For 2 years I had problems trying to get Perl, shell scripts, and PL/SQL code to show up correctly in WordPress. Once I had a problem licked another one would show up. The new software is and is light on blogging features but overall is much better software for organizing the type of data that I present. All blog posts from the old blog have been migrated to the new site.

Generating lots of DDL with DBMS_METADATA...

After using many different tools to generate DDL I usually end up back at DBMS_METADATA. DBMS_METADATA is an Oracle supplied package that became available with Oracle 9. DBMS_METADATA is an API that can be used to generate the DDL of most any object in an Oracle database. It is most handy for getting Table or Index DDL but there is a complete list of objects that DBMS_METADATA handles here.

Table Example

Make your queries Self Aware...

In past Oracle versions you may have used USERENV() to access some of this information. The information is now available in the 'USERENV' namespace of the sys_context function. Here is a useful example. When monitoring the current in-flight SQL it is nice to exclude the current query from the results:

Using PL/SQL region in Oracle Application Express

I'm still an Application Express beginner -- I'm used to web development that is closer to the HTML. While I am getting used to Apex's Regions and Templates sometimes you just need to build some HTML on your own. I have found some Apex helper functions that can help you whip up an anonymous PL/SQL block that can generate this. In Apex, add a "PL/SQL" region. You will get a blank textbox where you can enter some PL/SQL code. If you have the Demo application installed you can try this out:

Manage rebuilding of indexes...

I've been doing some speed testing of rebuilding indexes. I have been adding the PARALLEL clause to my alter index ... rebuild; statements but it has been suggested to me to also run multiple indexes rebuilds in parallel. So if I am wanting to run 4 rebuilds in parallel I could try to make 4 .SQL scripts with the appropriate commands. But what if one finishes early? Then I will be left with only 3 running. Here is a solution: 1) Create a table to hold the list of indexes you want to rebuild:
create table rebuild_indexes (

Larry The Punmaster



Subscribe to RSS