Apex upgrade 4.2 to 5.0.2

Just a quick note for anyone upgrading Apex on their systems.

The installation (into a non-multitenant instance) went through with no problems, but tracing the installation suggests it will flush the shared pool 6 times during installation/upgrade.

That might have some impact on other applications/sessions running on that database, so best to find a quiet time to do it.

A simplex apex DEPT/EMP based report

Today i've been doing some more work with Apex, i don't do that much of this and i'm entirely self taught (that's a disclaimer if how i do this following demo is done badly....).

I wanted to display a simple report screen where a simple drop down list at the top influences what is shown in the bottom half of the screen - so sort of a parent/child report (well kind of). I got (more...)

A justification for referential integrity constraints

Yes, I know what you’re thinking. 

“Here we go again.  Another database dude about to get stuck into us telling us about the importance of foreign keys for data integrity”

and yes, I could easily do that.  But you’ve seen that before (and by the way, it’s of course still totally valid – you should have all those integrity constraints defined!)

But here’s another reason, albeit a little tongue in cheek Smile


Restrictions on the append hint

I wanted to add an append hint to some code but realised that there are known restrictions when either triggers or referential integrity are involved.

That does make sense as potentially rows would be inserted that either did not fire a trigger or broke RI constraints.

I decided to produce a test case to prove that the restrictions did work and were still in place.

Test append with trigger created

set lines 240
set pages  (more...)

DOAG 2015 – "Oracle 12c Parallel Execution New Features" presentation material

Thanks to the many attendees that came to my presentation "Oracle 12c Parallel Execution New Features" at the DOAG conference 2015. You can download the presentation material here in Powerpoint of PDF format, as well as check the Slideshare upload.

Note that the Powerpoint format adds value in that sense that many of the slides come with additional explanations in the notes section.

If you are interested in more details I recommend visiting this post (more...)

AIOUG Sangam15 : Day 2

My session on Day 2 started at 11:10, where I spoke about running Oracle Databases in the Cloud. This included a quick run through of the Oracle DBaaS offering and AWS RDS for Oracle amongst other things.

The session generated a lot of interest. In fact, I spent the next 5 hours answering questions and taking photos with people. It sounds kind-of crazy, but it was really good fun. As a result, I didn’t get to (more...)

Countdown to Sydney

I’m speaking at the Sydney leg on the OTN APAC tour on November 30th, 394 Lane Cove Rd, North Ryde

This is a great event with local and international speakers all giving their time and knowledge for free to help you with your Oracle technology.

If you’re in Sydney, then come along for some great education.  Even if you cannot attend the conference, if you are in the area, come along and say Hi. (more...)

AIOUG Sangam15 : Day 1

I was up at about 04:00 on Saturday and waiting for breakfast to open at 06:30. Pretty much as soon as I ate something I felt really tired again. That after a day of sleeping… :)

I headed on down to the conference and instantly saw a bunch of friendly faces, including lots of people I had met on the OTN Yathra 2014 Tour.

After the keynotes, I got to have a quick chat about User Groups (more...)


In Oracle database the vie DBA_FEATURE_USAGE_STATISTICS is given to
display information about database feature usage statistics.
That's all I can find in The (12.1) Docu.

Just in case anyone asks - DBA_FEATURE_USAGE_STATISTICS is not mentioned in the license guide at all:

Still for me it's interesting what's behind the view, and how it's content is populated.

So I started to analyze it's anatomy.
Starting with the view definition (slightly rewritten for better readability):
SELECT  (more...)

Log Buffer #450: A Carnival of the Vanities for DBAs

This Log Buffer Editions picks few blog posts from Oracle, SQL Server and MySQL.


  • If you grant the DBA role to a user, Oracle also grants it the UNLIMITED TABLESPACE system privilege. If you then revoke the DBA role from this user, Oracle also revokes its UNLIMITED TABLESPACE system privilege.
  • Lost SYSMAN password OEM CC 12gR5.
  • How Terminal Emulation Assists Easy Data Management.
  • Using EMCLI List Verb to Get Detailed Information of EM Targets.
  • (more...)

Docker Data Containers


photo by  www.GlynLowe.com

One challenge with Docker is having persistent storage for a container especially when that container gets restarted on another VM host and we want it to point to the same data. If we add in Delphix with Docker we can easily move persistent data and a docker container to a new host.

For the docker container we will use wordpress that leverages a MySQL database for it’s persistent datastore.
In this example I (more...)

OPatch bugs when applying Grid Infrastructure

For one of my clients, I experienced several issues with applying PSU with opatch

There were some code changes in opatchauto, which are not yet production-ready. I am looking forward to seeing a new opatch release (maybe or 11) which has these issues fixed.

    “opatchauto apply -analyze” is (more...)

ORA-27101 Shared Memory Realm does not exist

What is the cause of the "ORA-27101 Shared Memory Realm does not exist"? How do I resolve this?

CLOBS, from 11g to 12c

If you are a regular user of LOB’s in the database, take care when you switch from 11g to 12c.  Notice the subtle difference:

In 11g, you are permitted to, and recommended to, use SECUREFILE lobs, but they are not the default

SQL> select name, value
  2  from v$parameter
  3  where  name = 'db_securefile';

NAME                                     VALUE
---------------------------------------- ---------------
db_securefile                            PERMITTED

In12c, SECUREFILE lobs will be the default.

SQL> select name, value
  2  from v$parameter

AIOUG Sangam15 : The Journey Begins

The day started pretty early. I was packing at 00:00 and the alarm went off at 05:00. Nothing like last minute packing to focus the mind. :)

The taxi to the airport was good. The driver was interesting, speaking to me about his visits to India and Pakistan. It certainly helps pass the time when the driver is chatty.

I wasn’t able to check-in online, but there was no queue at the check-in desk, so that was quick. (more...)

A Problem with REVOKE

If you grant the DBA role to a user, Oracle also grants it the UNLIMITED TABLESPACE system privilege. If you then revoke the DBA role from this user, Oracle also revokes its UNLIMITED TABLESPACE system privilege. This isn’t too much of an issue.
However, if you grant the UNLIMITED TABLESPACE system privilege to a user by itself THEN grant it the DBA role, Oracle seems to have no idea where the UNLIMITED TABLESPACE system (more...)

Lost SYSMAN password OEM CC 12gR5

I run my own licensed Oracle products in-house.  Since it is a very simple environment, largely used to learn how things run and verify what I see at customer sites, it is not very active at all.  But it is important enough to me to keep it maintained.

After a bit of a hiatus in looking at the OEM, which is at 12cR5 patched, I went back and noted that I was using the wrong (more...)

Oracle Week 2015: Oracle Advanced PL/SQL Presentation

As I said in my earlier post about Oracle Week 2015, this is one of the biggest database related educational (non-sale oriented) convention in Israel. None of the session is designed for selling any products (but consultant use it to showcase their abilities hoping to sell some professional services :)). Yesterday was my second daylong session in this convention this year . This time we talked about advanced features in PL/SQL and some new features of (more...)

howto: github – talks branch

A couple of months ago I did a presentation and decided to put the files up in github (https://github.com/karlarao/conference_eco2015) just because I wanted to move away from dropbox for my scripts and resources. Well, that was very convenient because the audience can just download the master zip file and that’s it! But then I figured I don’t want to have the next presentation on another repo and it would look pretty messy (more...)

How Terminal Emulation Assists Easy Data Management

Just about every company will need terminal emulation at some point. Yours may not need it now, but as time goes on, the day will come when you need information that can only be accessed with an emulator. This software allows a computer to basically take on the functionality of an older version. Doing so makes it possible for the user to access data that would otherwise be impossible to find. If you’re not sold (more...)