August - Visualization 1 - SQL Execution Plan Volatility

The first visualization I will be working on is something I have been wanting for a while. I need a way to quickly show SQL Statement performance over time for 1 statement, especially to identify Execution Plan volatility. When researching performance problems I often need to quickly digest historical performance of a trouble statement - a statement that usually has run fine for years but now has started acting up.

5 in 5 - 5 Oracle visualizations in 5 months...

It is time for me to get my rear in gear. I have tons of notes floating around on Oracle administration and performance related visualizations I would like to work on but without a deadline things start dragging out... Like when you have a weight loss or stop smoking goal that becomes real when you tell people about it.

"Playing" Nice with Oracle - Using Play Framework 2.1 with Oracle

I am throwing together a quickie Play Framework application for a DB process dashboard. I love Play. Its quick, powerful, and does a pretty good job of getting out of your way when you need it to.

But as a cutting edge open source app framework the documentation is sometimes a little behind the curve... Or assumes you are always using h2 for dev and mySQL for production.

Here are some tips on getting your new Play app to play nicely with Oracle via JDBC.

PowerDesigner Annoyances 1

Yes, I tagged it with a '1' because I already know there are more to come :)

I created a notebook on this site to collect information about PowerDesigner. My first entry deals with basic script generation options for Oracle and how to get better scripts that are more error-free when the are generated by PowerDesigner.

You can check it out here:



I have been checking out some usage patterns on a database I am migrating to Exadata. I won't go into the 'drop all of the indexes' herd mentality... but I would like to know what is really being used on this system so we can make some educated guesses about what is really needed. Luckily it is a DW / ETL type of application that has a comprehensive nightly refresh. Yes, a nice way of saying flush and fill. Well at least I know they touch _every_ important object _every_ night.

Golden Gate Lag Graph + Alerting scripts on the way...

I posted my GoldenGate / Gnuplot lag time alerting shell scripts to a new GitHub repository:

The scripts worked on v8 and I don't think the INFO ALL screen has changed much since then so hoping it will work on v11 with a minimum of changes. I will post a more comprehensive walkthrough after I verify the v11 compatibility...

I also have an Alerting perl script that I will be tidying up and including in the ggtools repository ... but that won't be available until later this month.

Oracle bug announcement - the sky is not falling...

...well not yet...

An Infoworld article was released today describing an Oracle vulnerability. The SCN space can be exhausted via bugs or attackers exploiting bugs. Metalink doc: 1376995.1 [Bulletin : Information on the System Change Number (SCN) and how it is used in the Oracle Database] covers a technical description for what SCNs are used for.

You can use this query to find out how close you are to the SCN limit.

New Project: - Extract SQL from an Oracle Trace...

I started a new project for a utility I started writing. It has some basic functionality now but will probably increase in utility int he future.

It is a Perl script that extracts the SQL statements from an Oracle 10046 trace file. This is useful if you need to re-run SQL that was captured during a trace. It also helps reduce the amount of junk you have to slog through if you are interested in - Extract SQL Statements From Oracle 10046 Trace File


A complete sandbox installation for VirtualBox... Thanks to Developer Days!

Oracle is supplying some ready-to-run downloadable VMs including Operating Systems, OSes with Oracle already installed and ready-to-run RAC systems. I was hoping to leverage these to save some time for sandbox environments but from what I have seen so far they are only for the enterprise level Oracle VM product. I only have the horsepower to run Oracle VirtualBox which is their workstation level product. It seems they use different formats for each product and while it may be possible to convert VMs backs and forth, I'm just not up for it right now.

Did you know... Writing to the alert log?

Came upon this post during my travels. Jonathan Lewis reveals how to write a string to the Alert Log, Current Session Trace File, or Both. Also a few misc functions are included.
    writes to alert log

    writes to session's trace file

    writes to both

see also 
    dbms_system.ksddt - writes a date-time stamp
    dbms_system.ksdind(N) - indents text using ":' characters


Subscribe to oracle