dave's blog

We're upgraded... but excuse the dust...

After lots of wrassling with the Drupal schema we're up and running on Drupal 7.

Sometimes it is a pain to be a DBA. I couldn't just let the problems with the schema upgrade alone and built my own script to fix issues so I could get the upgrade to complete successfully.

You may notice the new layout and color scheme. I will tone things down after I experiment a little bit... But may keep it in order to remind me of the exciting new things I hope to bring you in the coming months. OK I gotta go, the fast food colors in this theme are making me crave a Whopper.

OS User role separation for Golden Gate administration...

We have many fingers in the pie where I work. Silos, silos everywhere. The DBA Group is responsible for operations and performance. ETL Admins are responsible for data movement. For a number of reasons we cannot allow the ETL Admins to log in directory as Oracle user. This is what I came up with to make everyone happy.

What is an ETL admin?

Our ETL Admins are users who do not need DBA or ROOT type access, they just need to run ggsci, start stop processes, edit config files, and check status of how things run.

Parallel Processing Shell Script for SQLPLUS...

Just a quick note to mention I created a notebook page on my site covering the Parallel Processing Shell Script and how to use it to run multiple SQLPlus sessions in parallel.

The page is available here.


So you want to use Oracle GoldenGate with Virtual Private Database (VPD)...

I recently had a customer that wanted to extract one client's data out of a VPD enabled multi-tenant database. They were convinced GoldenGate was the solution... but they were way ahead of me with scheduling resources for implementation before fully fleshing out the problem.

What's the (real) problem?

Strawberry Perl + DBD::Oracle for MS Windows...

While helping a developer at my company get up and running with some DBI/DBD stuff I came across the Open Source Strawberry Perl distribution for Windows. It is an all-in-one package of Perl interpreter and many common packages required to get productive. Hopefully gone are the days of struggling to find a DBD driver compiled for Windows... From the website:

Pointing a private database link at another database without knowing the password...sorta...

Pointing a private database link at another database without knowing the password...


  • SOURCEDBA source database which has a schema that owns a private database link
  • TARGETDB1, the original target database for the link
  • TARGETDB2, a clone of TARGET1 that was renamed to "TARGETDB2"


Freely Available Perl Resource - Modern Perl by Chromatic

Modern Perl by Chromatic is a freely available Perl eBook. It is a good resource for folks already familiar with programming that want to get up to speed quickly on Perl conventions and syntax.

Previously I used to use a collection of OReilly books to cover this territory but have replaced with 1 copy of Modern Perl (well with the exception of the Cookbooks, you will pry them out of my cold dead hands).

Fixed Object Statistics

If you have a database where querying against v$ Performance views is painful, consider gathering Fixed Object Stats.

Fixed objects are the 700+ X$ tables that feed a lot of these system and performance views.

Fixed Object Stats are _not_ gathered by the default stats gathering procedures. They are not gathered at all unless you run the proc to gather them. In this case Oracle relies heavily on Dynamic Sampling… but that isn’t really a substitute for really gathering stats.

Join them all...

Why does my query have a MERGE JOIN CARTESIAN?

Yes, the mention of Cartesian Joins usually makes a DBA's heart skip a beat. The cartesian joins caused by missing join conditions are definitely a pain to deal with - these are the types of joins that can "blow up" temp space and cause all types of alarms to go off.

I didn't find anything in Oracle's official 11g documentation on this particular join method but I did find plenty of articles about issues with it in their support DB. I have chased down a few of these in the past couple of weeks and here is what I found.


Subscribe to RSS - dave's blog