Search

Top 60 Oracle Blogs

Recent comments

June 2014

Rolling upgrads using logical standby database.

Couple of weeks ago there was a Twitter discussion started by Martin Bach (@MartinDBA) about cases for logical standby implementation. A rolling upgrade was mentioned by Tim Gorman (@timothyjgormanas) as one of potential recommendations for using this rare use product. I have been involved in such project in the past and I prepared an instruction and did quite large number of rolling upgrades from 11.1 into 11.2.

There are couple of my “gotchas”

It’s about : Data Supply Chain

#222222;">There have been a number of questions coming my way about Delphix versus snapshot technologies. The capabilities of Delphix can be differentiated from snapshot technologies through the following hierarchy:

#222222;">Screen Shot 2014-06-24 at 6.57.54 AM

Parallel Execution Skew - Addressing Skew Using Manual Rewrites

This is just a short note that the next part of the mini series about Parallel Execution skew has been published at AllThingsOracle.com.

After having shown in the previous instalment of the series that Oracle 12c added a new feature that can deal with Parallel Execution skew (at present in a limited number of scenarios) I now demonstrate in that part how the problem can be addressed using manual query rewrites, in particular the probably not so commonly known technique of redistributing popular values using an additional re-mapping table.

If I can’t picture it, I can’t understand it

#000000;">
#000000;">“If I can’t picture it, I can’t understand it.” – Albert Einstein

#000000;">
#000000;">Along the same lines

#000000;">“It is impossible to even think without a mental picture.” – Aristotle:

Getting the database parameters from a spfile

There’s been some debate about how to get the parameters from a spfile. A spfile is a binary version of the parameter file of the Oracle database.

I added to the debate that my experience is that there are is some weirdness with using the strings command on the spfile. The discussion was on twitter, I didn’t add that doing that it most of the time meant it costed more time than I saved from using the “shortcut” of using strings on a spfile.

Let me show you what it means.

I’ve got a database with storage on ASM. Among other options, there are two simple methods to get the spfile from ASM:

You can get the spfile by logging on to the database, and create a pfile from the spfile, and create a spfile again:

Friday Philosophy – Why is my Manager a Moron?

We’ve all been there. We are trying to do our job, get the work done, fix people’s problems and make the systems we work on better. But our manager is a Moron. How can we do what needs to be done with that idiot in charge? How did they get to be the manager?

Why is my manager a Moron?

The simple answer is that he/she probably is not a moron at all. But you have to blame someone for things not being the way they are:

Reconstructing oratab from the cluster registry

At the Accenture Enkitec Group we have a couple of Exadata racks for Proof of Concepts (PoC), Performance validation, research and experimenting. This means the databases on the racks appear and vanish more than (should be) on an average customer Exadata rack (to be honest most people use a fixed few existing databases rather than creating and removing a database for every test).

Nevertheless we gotten in a situation where the /etc/oratab file was not in sync with the databases registered in the cluster registry. This situation can happen for a number reasons. For example, if you clone a database (RMAN duplicate), you end up with a cloned database (I sincerely hope), but this database needs to be manually registered in the cluster registry. This is the same with creating a standby database (for which one of the most used methods is to use the clone procedure with a couple of changes).

Delete Costs

One of the quirky little anomalies of the optimizer is that it’s not allowed to select rows from a table after doing an index fast full scan (index_ffs) even if it is obviously the most efficient (or, perhaps, least inefficient) strategy. For example:

Delete Costs

One of the quirky little anomalies of the optimizer is that it’s not allowed to select rows from a table after doing an index fast full scan (index_ffs) even if it is obviously the most efficient (or, perhaps, least inefficient) strategy. For example:

Instrumenting Your Code using DBMS_APPLICATION_INFO

Head on over to my post at Toad World to read all the details about instrumenting your code with DBMS_APPLICATION_INFO.