I was trying to recreate the scenario where a 12c container database is flashed back to a SCN before the point that I recovered a pluggable database to using point in time recovery.
I got this ugly ORA-00600:
RMAN> recover pluggable database pdborcl;
Starting recover at 16-APR-14
using channel ORA_DISK_1
starting media recovery
media recovery failed
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-03002: failure of recover command at 04/16/2014 06:07:40
I got the newly available Kaplan test prep software for the Oracle 12c OCP upgrade exam.
I took the test in certification mode when I was tired at the end of the day some day last week and got 44% right – fail! I usually wait until I get all the questions right before taking the real test so I have a ways to go.
The practice test software has been useful in terms (more...)
Here is a zip of two examples I built as I’m learning about the new adaptive plans features of Oracle 12c: zip
The first example has the optimizer underestimate the number of rows and the adaptive plans feature switches the plan on the fly from nested loops to hash join.
In the second example the optimizer overestimates the number of rows and the adaptive plans feature switches the plan from merge join to nested loops.
Spent a good amount of time yesterday and today reading about auditing in Oracle 12c. Can’t say I read every word, but I think it was worth reading the three chapters in the Security manual related to auditing:
Chapter 21 Introduction to Auditing
Chapter 22 Configuring Audit Policies
Chapter 23 Administering the Audit Trail
I haven’t used these features but it seems like a major new piece of code with the Unified Audit Trail.
A RMAN restore and recovery that I completed today answered a couple of questions that remained after the recovery that was the topic of my post from June. Both today’s recovery and June’s involved a restore of a production database on another host and a recovery of that database to a particular point in time.
Question 1: How to rename redo logs?
When doing a restore and recovery to a point in time RMAN (more...)
This is the second in a series of posts about different performance tuning authors and speakers who have had a big impact on my career. My first post was on Craig Shallahamer. I am ordering these posts chronologically. Craig was the first to impact my career by improving my Oracle performance tuning knowledge. The next person was Don Burleson.
I have heard Don Burleson speak at several user group conferences and (more...)
In an earlier blog post I showed how I used coe_xfr_sql_profile.sql from the sqlt toolkit from Oracle support to force a particular sql statement to run with a more efficient plan that it had used in the past.
Today, I’m trying a slight variation. Take the problem query, run it with hints, and use coe_xfr_sql_profile.sql to apply the resulting plan to the original query. I built a quick and dirty test (more...)
I attended two events this week that used the term “analytics” to describe a performance tuning feature that displays metrics in various useful ways.
On Tuesday, I attended a Delphix 4.0 Webinar where Delphix’s CTO Adam Leventhal described the new Delphix Analytics including the very interesting Latency Heat Map. The latency heat map looked like a customer usable front end to the sort of performance information that Delphix support had collected when I (more...)
I decided to read the entire Oracle 12c Concepts manual. It’s kind of overkill to read the entire manual if you just want to learn the new 12c features but it has been a long time since I’ve read the entire Concepts manual on the current version of Oracle. I’m not sure that I remember correctly, but I think the last version I read entirely was the 9i version. I definitely read (more...)
Here is the sqlplus scripting I use to check whether row chaining is degrading a query’s performance:
VARIABLE monitored_sid number;
SELECT sid into :monitored_sid
select b.value "table fetch continued rows"
where b.SID = :monitored_sid
and b.STATISTIC# = (SELECT STATISTIC# FROM V$STATNAME
WHERE NAME='table fetch continued row');
I create a test script with the problem query and put this code after it to (more...)