Creating a RAC 12.1 Data Guard Physical Standby environment (3b)

Huh, what is this I hear you ask? Part 3b? Oracle 12.1? Well, there’s a bit of a story to this post. Back in December 2016 I started to write a series of blog posts (part 1 | part 2 | part 3 | part 4) about how I created a standby database on RAC 12.1. For some reason I forgot to post this part. Up until now the step where (more...)

enabling Database Vault on e-business RAC database

Right now I'm in a process to setup Database Vault for an E-Business suite database. This is a 2 node RAC cluster.
The DB is with April 17 BP.

As the DB exists already, I followed How To Enable Database Vault in a 12c database ? (Doc ID 2112167.1).
Everything looks smooth, but unfortunately, at the Configuration of DV
exec dvsys.configure_dv('DVOWNER','DVMANAGER');
failes with
ERROR at line 1: 
ORA-47500: Database Vault (more...)

Cluster Resource To Check When Patching RAC DBFS OGG

crsctl stat res|grep -i type|sort -u


crsctl stat res -p -w 'TYPE = ora.database.type' | egrep '^NAME|AUTO_START'

crsctl stat res -t -w '((TARGET != ONLINE) or (STATE ! (more...)

Patching GoldenGate with DBFS

There seems to be no consistency as to what directories should be on DBFS for when GoldenGate is implemented with RAC.

Here I will share my thoughts based on issues encountered.

oracle@test1:/opt/oracle/12.2.0/ggs01$ ggsci

Oracle GoldenGate Command Interpreter for Oracle
Version OGGCORE_12.
Linux, x64, 64bit (optimized), Oracle 11g on Jan 23 2017 21:54:15
Operating system character set identified as UTF-8.

Copyright (C) 1995, 2017,  (more...)

Playing With Service Relocation 12c

With 12c, use verbose to display services running.
[oracle@racnode-dc1-1 rac_relocate]$ srvctl -V
srvctl version:

[oracle@racnode-dc1-1 rac_relocate]$ srvctl status database -d hawk -v
Instance hawk1 is running on node racnode-dc1-1 with online services p11,p12,p13,p14. Instance status: Open.
Instance hawk2 is running on node racnode-dc1-2 with online services p21,p22,p23,p24,p25. Instance status: Open.

[oracle@racnode-dc1-1 rac_relocate]$ srvctl status instance -d hawk -i hawk1 -v
Instance hawk1 is running on node racnode-dc1-1 with online services  (more...)

Running RAC in a Virtual Environment

I was in a discussion at an Oracle Meetup this week, and the subject of RAC in a virtualized environment – specifically Oracle Virtual Machine (OVM) – came up.
Here’s a couple of points which were discussed.


There was a lack of awareness of a common problem, which has a solution built-in to Oracle Grid Infrastructure and later. In a virtualized environment, the network components are also virtualized. Sometimes, network (more...)

UKOUG Technology Day


We have organized a UKOUG Technology Summit in Leeds on 16th May.

It’s really a small Conference!

This is available to UKOUG Members and will cost 1 SIG Pass – even Bronze memberships come with 1 SIG pass, so all members could attend at no cost.
Non-members can pay to attend, but you should take out a Bronze Membership instead as it’s about the same price!

Come along, network with your peers, and listen to (more...)

asmcmd “connected to an idle instance” – not

This is more a note to myself in case I’ll encounter a similar environment. But maybe it helps others – at least my search results weren’t suitable to Windows in the first place. Issue C:\> set ORACLE_HOME=C:\path\to\grid\home C:\> set ORACLE_SID=+ASM1 C:\> asmcmd connected to an idle instance. Environment Windows 2012R2 Oracle Grid Infrastructure 2 […] fails with CRS-2101:The OLR was formatted using version 3

Got this while trying to install RAC on Redhat Linux 7.2. fails with a message like

ohasd failed to start
Failed to start the Clusterware. Last 20 lines of the alert log follow:
2017-11-09 15:43:37.883:
[client(37246)]CRS-2101:The OLR was formatted using version 3.

This is bug 18370031. Need to apply the patch before running

I am speaking at Mumbai, OTNYatra 2007! Come and say Hi!

I am speaking at Mumbai leg of OTNYatra 2007. I shall be presenting about high availability in RAC and what are different options and configurations possible in it, including the 12c specific Transacion Guard and Application Continuity. If you are attending, do come at my session at 4pm and say Hello!

Failed to create voting files on disk group RECOC1

Long story short, faced this issue while running OneCommand for one Exadata system. The step (Initialize Cluster Software) was failing with the following error on the screen

Checking file on node
Error: Error running root scripts, please investigate…
Collecting diagnostics…
Errors occurred. Send /u01/onecommand/linux-x64/WorkDir/ to Oracle to receive assistance.

Doesn’t make much sense. So let us check the log file of this step

2017-04-27 (more...)

Vagrant? Again? …Really?

(Yes. And Ansible. And Oracle…) TL;DR. This is the repo I’ll be talking about. It can use Ansible to provision Oracle (SI/RAC). Like I’ve said before, I use Vagrant quite a lot and I basically have 2 configs that I use every time. One that uses an external ‘hosts.yml’ to define the hosts (ip, ram etc) […]

Exadata Upgrade to – The Missing Step

I decided this week to be a little brave and upgrade one of the Enkitec Exadata racks to  I installed the Exadata image a few weeks ago, and have been waiting for a chance to upgrade clusterware to 12.2.  Thankfully, Oracle provides a very good note for this, but I did hit one large snag that should be documented.

The process for upgrading GI to 12.2 (more...)

Oracle RAC 12.1 – lsnodes exited with code 9

I was trying to do a 2 node RAC setup on Solaris 11.3 where Oracle Solaris Cluster 4.3 was already configured. Installed was running but the Cluster Node Information screen was appearing like this


The install log shows this:

INFO: Checking cluster configuration details

INFO: Found Vendor Clusterware. Fetching Cluster Configuration

INFO: Executing [/tmp/OraInstall2017-03-28_12-50-48PM/ext/bin/lsnodes]

with environment variables {TERM=xterm, LC_COLLATE=, SHLVL=3, JAVA_HOME=, XFILESEARCHPATH=/usr/dt/app-defaults/%L/Dt, SSH_CLIENT= 56370 22, LC_NUMERIC=, LC_MESSAGES=, MAIL=/var/mail/oracle, PWD=/export/software/grid/grid, XTERM_VERSION=XTerm(320), (more...)

Creating a RAC cluster using Ansible (part 2)

In my previous 2 blogposts i explained how to setup a Vagrantfile that deploys 2 virtualbox machines that can be used as a basis for a RAC cluster and how you could use Ansible to deploy RAC on those VM’s. In this post i want to dive a bit deeper into how i setup Ansible and why, keep in mind that this just one way of doing this.

The Github repository containing all the files (more...)

Grid Infrastructure 12c installation fails because of 255 in the subnet ID

I was doing another GI cluster installation last month when I got really weird error.

While was running on the first node I got the following error:

2016/07/01 15:02:10 CLSRSC-343: Successfully started Oracle Clusterware stack
2016/07/01 15:02:23 CLSRSC-180: An error occurred while executing the command '/ocw/grid/bin/oifcfg setif -global eth0/ eth1/' (error code 1)
2016/07/01 15:02:24 CLSRSC-287: FirstNode configuration failed
Died at /ocw/grid/crs/install/  (more...)

SCAN Listener Crash After Applying July 2016 PSU

I ran in to a small issue while applying the July 2016 quarterly patch to a couple of Exadata racks last week.  The systems were running GI, previously with the January 2016 PSU.  The patches applied successfully, and we were beginning the process of running the post-patch scripts on the databases in the cluster.  This process involves manually starting the database in upgrade mode, and we saw a message in SQL*Plus that the (more...)

When should you use Oracle RAC?

Over the past years we've worked on many Oracle projects, some with RAC, some without, some which intended to implement RAC and failed, and some which implemented poorly and ripped it out at the last minute. 

For those new to Oracle, RAC is the Real Application Cluster option for the database which lets you cluster the database servers. The main reason for using for RAC is that it brings resilience to a system, it (more...)

Configuring VNCR for Oracle RAC

By default on an Oracle RAC installation, the listeners are configured to allow any database to register with them.  There is no security out of the box to determine which databases may register.  While this makes it easy to create new databases without worrying about listener registration, this can cause potential problems in a real environment.

This can be dangerous working with RAC environments where the database registers with both a local and remote listener.  The (more...)

Review: Oracle RAC Performance Tuning

Some time ago, I received a free review copy of Brian Peasland‘s recent book, Oracle RAC Performance Tuning.

First, a note on my RAC background: I spent 7 years on Oracle’s RAC Support team. When customers had an intractable RAC performance issue, I was on the other end of the “HELP!” line until it was resolved.

I made Brian’s acquaintance through the MOS RAC Support forum, where Brian stood out as a frequent (more...)