Friday, November 23, 2012

Reinstalling an Oracle Database Appliance Part 3

An Oracle Database appliance is a set of standard hardware and software molded together to created a 2 node RAC cluster that is easy to deploy. In parts 1 & 2 i talked about what methods you can use to reformat or erase the Oracle Database Appliance and rebuild it. In this post  i will talk about 2 methods to complete a deployment on the Oracle Database Appliance (ODA).
You can use the GUI tool oakcli deploy that will walk you thru all the steps and let you add all the IP's and then do the deploy.
You can use the Oracle Appliance Kit offline configurator to generate the conf file and then either run  oakcli deploy to quickly validate all the information and runa graphical deploy.
The Oracle Appliance Kit Offline Configurator is available at the Oracle Technology Network ODA Page .  The Offline configurator is an exact replica of the oakcli deploy tool except it can be done on your laptop so you dont have to type all the info on the server. The Offline Configurator allows to save a text file in the below format.
#onecommand.params generated by GUI tool
# Confuration information


DbNodeArr=(ALL )

This text file contains a complete snapshot of the ODA being Built. Below is how the ODA configurator looks like.

Once the file is loaded you can go thru a standard GUI deployment.
The Second method which is very useful to deploy an ODA is the silent method. you can use the text file generated from the ODA offline configurator and copy the config file

./oakcli copy -conf /software/test11_12.txt
Successfully copied the config file!!!

Once the config file has been copied you list what the steps are

[root@oak1 onecmd]# cd /opt/oracle/oak/onecmd
[root@oak1 onecmd]# ./ -l
INFO   : Logging all actions in /dev/null and traces in /dev/null
INFO   : Loading configuration file /opt/oracle/oak/onecmd/onecommand.params...
The steps in order are...
Step  0 = ValidateParamFile
Step  1 = SetupNetwork
Step  2 = WriteNodelists
Step  3 = SetupSSHroot
Step  4 = SetupDNS
Step  5 = UpdateEtcHosts
Step  6 = SetTimezone
Step  7 = SetupNTP
Step  8 = SetupILOM
Step  9 = ValidateEnv
Step 10 = CreateUsers
Step 11 = SetupStorage
Step 12 = SetupSSHusers
Step 13 = InstallGIClone
Step 14 = RunGIClonePl
Step 15 = RunRootScripts
Step 16 = GIConfigAssists
Step 17 = CreateASMDiskgroups
Step 18 = InstallDBClone
Step 19 = RunDBClonePl
Step 20 = DbcaDB
Step 21 = SetupEMDbControl
Step 22 = SetupACFS
Step 23 = SetupTFA
Step 24 = SetupASR
Step 25 = ResecureMachine
[root@oak1 onecmd]#
It is very important to validate how many steps are there since Oracle can change the number between the versions. The above is a snapshot of ODA 2.4 Steps. you can decide to break down the number of steps run this in debug mode in which case you will have interaction on some steps. or just execute via a shell script
[root@oak1 onecmd]# ./ -r 1-25

This will execute the ODA deploy in non GUI mode with all logging happening as normal.
This concludes this 3 part series on how to reinstall an Oracle Database Appliance. Please feel free to ask any questions regarding the ODA and i will try to the best of my knowledge to answer them

Reinstalling an Oracle Database Appliance part 1 Reinstalling an Oracle Database Appliance Part 2

Tuesday, November 20, 2012

Restoring a Database with Rman Controlfile Parameters

There are occasions when you recieve a complete backup of a database from a  place different then yours and have to do a restore. normally a restore is simple . put the files in a directory run rman catalog on them and you are done. but what if you have rman configuration parameters stored in the controlfile and you are trying to duplicate the database. During a duplicate rman will restore the controlfile and then use the parameters associated in the controlfile for the next steps.
I hit this issue when the db i was trying to duplicate  has sbt_tape parameter and the host i was trying to duplicate on  has no MML configured to it.
After trying a couple of times with no luck. I opened an SR and got a response from a very helpful Oracle Support guy (even on Sev 3).
Below are the procedures i followed to solve my rather simple problem.
1. Startup the auxiliary database in nomount
2. Restore the controlfile from the autobackup piece
RESTORE CONTROLFILE FROM '.... location and name of the autobackup piece ...';
3. Mount the database:
4. Clear the SBT related configurations, CHANNEL and DEVICE - Do a show all and make sure there are no parameters that you might have an issue with
See the RMAN reference guide under CONFIGURE for details on how to do this.
5. In SQLPLUS backup the controlfile:
ALTER DATABASE BACKUP CONTROLFILE TO '/location/of/backups/control.dbf';
6. Startup the auxiliary database in nomount
7. Move the controlfile autoback piece out of the backup location
8. Run the Duplicate, which now will use the controlfile copy we created with correct RMAN configuration.

I was unaware of doing something this way and i guess its good to learn something new everyday.

Thursday, November 15, 2012


To install an new EM12c environment it is highly recommended you run the emprereqkit  utility . This utility is accessible thru the installation binaries  in the $SHARED_SOFT_PATH/ directory. if you are running a prereq check via a shared mount point . you might hit an error like the one below. This error happens if you ran an emprereqkit   on another environment and never completed all the tasks.

Following exception occured in EMPrereqKit
Calling sequence (top to bottom)
--level 1--------------------------------------
Class/Method: EMPrereqKitManager/getInitialState
Message     :  Please end the session in last db (runPrereqs, runCorrectiveActions, runPostCorrectiveActions). Then only you can start a new session at a new db

         at oracle.sysman.emdrep.emprereqkit.emprerequisitemanager.EMPrereqKitManager.getInitialState(
         at oracle.sysman.emdrep.emprereqkit.emprerequisitemanager.EMPrereqKitManager.processActionsList(
         at oracle.sysman.emdrep.emprereqkit.emprerequisitemanager.EMPrereqKitManager.executeMainOperation(
         at oracle.sysman.emSDK.emdrep.emprereqkit.EMPrerequisiteKit.executeMainOperation(
         at oracle.sysman.emdrep.emprereqkit.core.EMPrereqKit.main(

 Caused by: null

empreqkit creates a state file that keep tab on the state of the job.
the Statefile is created in $SHARED_SOFT_PATH/
a cat of the statefile will show something like this

If this state file is there it will not  allow you to run a seperate session until either the old session on the old database server  is completed or the statefile is removed or renamed.

Tuesday, November 06, 2012

Reinstalling an Oracle Database Appliance Part 2

This is the second post in the series for Reinstalling the Oracle Database Appliance. In the last post i discussed using Bare matal install to reimage the ODA and perform a new deployment. In this post i will talk about is a utility provided by Oracle as Part of the Oracle Appliance Kit (OAK). This utility performs the following

The Cleanup Steps are the following:

    1. uninstall ASR
    2. de-install All Oracle Software except the Oracle applicance Kit and the OS
    3. Cleanup Disk
    4. drop all users
    5. rollback various system configs
    6. remove public and private IP info

The script is available in /opt/oracle/oak/onecmd directory and will  ask you to confirm 

[root@oak1 ]# ./

Please enter the root password for performing cleanup:
Re-enter root password:
About to clear up OAK deployment,public network connectivity will be lost,root password will be set to default and both nodes will be rebooted
Do you want to continue(yes/no):

This will cleanup all the software on both the nodes. Please note while the OAK software will remain. you will lose access to the box since the public IP will be wiped out. you will need to access the ILOM and remote console in to reconfig the IP's on both nodes 

./oakcli configure firstnet
This will allow you to either further patch the system or run a deployment .
The difference between the vs Baremetal can be attributed to 2 main things and while both must be used with caution and provide loss of data. Cleanupdeploy will not format the root filesystems so anything not on shared disk is preserved but will keep the old version of the OAK software in tact. Bare Metal restore on the other hand will wipe out everything but will also give you the software version you need. For new deployments if your intention is to go to 2.4 and your ODA is running version 2.1 my recommendation would be to do a Bare metal prior to deployment. The will help in redploy an ODA for cases like moving from HIGH redundancy to NORMAL redundancy if you have not yet deployed an ODA or of you want the additional space and have something like Dataguard to failover you database . rebuild the ODA and fail it back.

In the 3rd Part of this series i will walk thru the deployment process and how to do deployment manually or via the OAK Configuration Assistant.

Reinstalling an Oracle Database Appliance part 1 Reinstalling an Oracle Database Appliance Part 3

Sunday, November 04, 2012

Reinstalling an Oracle Database Appliance Part 1

Oracle Database Appliance comes with factory installed software. If you need to reinstall or reimage the ODA you can do that using a couple of methods. I'm going to have  series of posts talking about reinstalling and redeploying an ODA using various methods
A reinstall needs to start with cleaning up
There are 2 methods for cleanup..
  1. Using a Bare Metal Install
  2. Using
A Bare metal Install is done by downloading an ISO from the MOS. The latest 2.4 ISO can be downloaded Here.
While there is a complete document available via Note. 1373599.1. 
I will give a brief synopsis of what is needed. A Bare install needs to be done per node and the instructions are the same. Please note a bare metal install will format all disks. All data will be lost. All instructions here will cause loss of data and should be done with extreme caution.
  1. . Download the 2.4(or version you need) ISO.
  2.  Login to the ILOM 
  3.  Go to the Remote Control tab and launch remote control.
  4.  In the java window that opens Select Devices --> Cdrom Image
  5. Select where the image resides on your laptop and click ok. This will map the cdrom image to your device
  6. Once the mapping is confirmed . go to the ILOM Remote control tab - >Host Control  and Select Cdrom as the next boot device
  7. In the Remote Control -->Remote Host Control  Select Power Cycle and OK
  8. This will reboot the node and start the install process. 
  9. If you are installing over a network. Please make sure not to disconnect until the install is completed.
  10. The reimage process can take between 1 to 2 hrs  to complete.
  11. After the reimage is complete.  the node is now akin to a factory installed node for the version you just imaged on.
  12. Follow the same steps to image the second node . Both nodes can be imaged in parallel.
  13. The ILOM and Bios are not impacted and a deploy/patch will need to be run to get the ILOM/BIOS to update.
  14. Run a ./oakcli configure firstnet to IP and bring the node on the public network
  15. Follow the steps in the read-me of the End user bundle to deploy the ODA.
 In the next post I'll talk about and how you can run a cleanupdeploy to reinstall the ODA.

Reinstalling an Oracle Database Appliance part 2 Reinstalling an Oracle Database Appliance Part 3

Friday, November 02, 2012

Oracle Database Appliance (ODA) Patch 2.4 is out

This is just a post ot point out that ODA Patch 2.4 is out. ODA Patch 2.4 requires 2.2 or above to install.
A couple of Highlights of this release seem to be
  1. Enhanced odachk 2.16
  2. A trace file analyzer 
  3. The ability to now use normal redundancy for DATA and RECO diskgroups
The ability to double mirror instead of triple mirror move the ODA's capacity from 4Tb to 6TB and is a choice in the offline configurator
if you have an old deploy file you can load it in the 2.4 Offline configurator by changing
I will play around with the trace file analyzer to see what it brings to the table.

Sunday, October 21, 2012

ODA /Linux What to do if your screw up /etc/passwd file.

While this is more of a Linux Post . I'm adding this to the ODA Category Since this happened to me on a Database Appliance.
Since in my organization the Database team own complete control of the Database Appliance. We have to learn Unix/Linux administration. Oracle Database Appliance while a pretty hands off experience still need some work if you need to manage and maintain password synchronization etc.
In that category I wrote a script that ssh'ed in the box moved the /etc/passwd and then scp'ed a new set of files.
As you can see the statement above is the problem itself. if you move the /etc/passwd you cannot authenticate which means you have in essence created a box that no one can login to via any means.
This is really bad situation since you now have a node with no access since no one can authenticate.
Fortunately for me i had a very good Sysadmin who rescued me from this pickle.
He download OEL ( Oracle Enterprise Linux) and was able to rescue the system.

I'm putting below the steps we took
----- Procedure to rescue  start ---

Log into ILOM.
Select Remote  Control - Redirection Tab.
Click on Launch Remote Console
 Once connected the remote console:
Select Devices Menu Item and start redirection to a CDROM or CDROM image.
Select Keyboard Menu Item and cleck Control Alt Delete … to reboot the system.
Go back to the ILOM console.
Select Remote  Control – Host Control Tab.
Change Next Boot Device to CDROM..
Click save.
 Go back to the Remote console and watch for the system to boot.
Do NOT hit any keys once its boots off of the CDROM or you may start the interactive install.
At the booted CDROM prompt type.
linux rescue
The will step through the rescue boot mode.
Select the appropriate regional responses when prompted.
Select ok to find and mount root filesystems as read/write.
These will be mounted under /mnt.
Once you get a shell prompt run df –h to confirm.
From here you will be able restore/replace corrupt or missing files.
--- Procedure to rescue  Stop---- 

The Moral of the story is Be very careful with what you are trying to do .  The intention might be right but the wrong execution can cause you a lot of grief.

Post Oracle #Openworld 2012 view & Bloggers meetup 2012 #OOW

I've been trying to get  a blogpost in for a while now but have not had enough time to actually get that in.
This is my Summary of Oracle Openworld 2012 or #oow to some. Oracle Openworld is tremendous event . There is just a lot of activities , be it Knowledge Sharing , Peer to Peer interaction or just socializing in general.
I've been very Fortunate this year to present at 2 conferences IOUG Collaborate  as well as Oracle Openworld 2012.
The presentations are embedded within this post at the end. I would like to thx IOUG for providing the outlet to people for peer to perr interaction and providing such a wonderful outlet for growth and opportunity.
There were a lot of announcements and Being a DB person my focus was the DB. Oracle Database 12c is going to be awesome  . Some of the features like GDS and Farsync are going to make Disaster Recovery and Datacenter recovery very easy on the Database Tier. Flex ASM also has a lot of potiential. Oracle Enterprise manager 12c has grown to be a very good product and i urge everyone to look at all the fantastic content around em at Oracle Open world 2012 .
I cant even describe the amount of Good Content out there and  i would recommend everyone download the content Slides which are available to everyone Here.
The Blogger Meetup was the highlight of Oracle openworld for me and i have posted a lot of Pics which Kellyn has graciously tagged all the People . The Folks at Pythian and Enkitec do an Awesome job with promoting talent and events like the Blogger meetup show that very clearly. To New Friends and all the meeting all the ones we know again.  I've Posted the Pic on Facebook here & G+ here
I'd Also like to Thank the Oracle Database Appliance Team for all their Hospitality and as someone who is really enjoying the Oracle Database Appliance experience. There is a lot of Hard Work put by a lot of Talented Indivduals . Thank you Sohan DeMel and all his team for all the work around the ODA. Thx Ravi Sharma for taking the Pics Below.

Below are The 2 presentations that i was part of this Oracle openworld 2012.

Saturday, September 29, 2012

#oow day 0

Oracle openworld is almost here today was day 0 for openworld attendees and day 1 for MySQL attendees
I went thru and did sightseeing an last night got to see bikers.
It is going to be an interesting week with lots of networking and lots of new learning opportunities on the horizon

Friday, September 28, 2012

#oow or #oow12 is on the horizon

I just landed yesterday for Oracle Openworld Today. Oracle Openworld this year is  a not to miss experience specially for Database junkies. Oracle is supposed to talk about  New Databases , New Hardware, New applications , New Everything and i'm guessing C is the letter of the conference. Please note i do not have  any Oracle  confidential information so all is speculation based on what i've read and heard so far. The #ACED directors meeting was yesterday and it seems there was a excitement about Openworld this year.
I've been busy but will post what i intend to see shortly but it has been a busy year for us and We will be talking all about it at our session on Tues Oct 2nd at 1:15

CON3776 - Implementing the Oracle Database Appliance as an Enterprise Solution

I will Also be speaking about My experience Migrating  A database using Dataguard as part of the #IOUG Sunday  User Group Sessions.

UGF4209 - Migrating to Oracle RAC and Upgrading: An Oracle Active Data Guard Success Story 

  Here is a timeline of #oow embedded in this post


Thursday, September 13, 2012

Oracle Openworld 2012 is almost here #OOW12

Oracle Openworld 2012 is almost upon us. There is a lot of expectations and a lot of speculation about What Oracle is going to announce . A preview can kinda be found here and a Another mini real  conference The Oracle Real World Conference is advertised here.
A Safe Bet is a lot of New Hardware and Software will be announced.
The Annual Blogger Meetup is all set and Is being arranged by the good Folks at Pythian. Details are here.
I'll be Presenting  At Openworld this year . I'll be presenting 2 session. one session will be a rehash of the session i gave at IOUG about how we migrated to RAC using Dataguard.
The Second Session i will be co-presenting with My Colleagure about using Oracle Database Appliance as an Enterprise Solution.
You can click on the Image below to be linked to those session.
Oracle Openworld is full of knowledge and fun events including RACAttack , Tweetups et all.
Say Hi! if you see me around and i hope i can see a lot of fellow twitter,bloggers and knowledge seekers around.

Monday, July 30, 2012

Custom RPM's on a Oracle Database Appliance

Oracle Database Appliance comes bundled with a lot of things but there are still time when you will need to install custom RPM's to enahnce some of the capabilities of the ODA.  Cases might include 3rd party agents that include specific requirements or Oracle open source packages like yast that are needed to manage the ODA from the linux Administration perspective via Enterprise Manager Cloud Control.
Initially when i needed to do this i added a yum repository and downloaded the RPM directly . Oracle Strongly recommends against that practice since it can allow someone to update all the RPM's from the public yum repository or the up2date and cause the Oracle Database Appliance functionality fail.
Oracle has published 2 MOS notes detailing the 2 recommended methods to get RPM's from the oracle repositories

Method 1. 

Note ID 1461818.1 describes the process to download the RPM's to a different linux server which should have the same architecture and kernel and then copy them to the Oracle Database Appliance for install . This methods sets up the public yum repository on the alternate server and using

   yum install --downloadonly --downloaddir="directory_path" "rpm name"

This methods allows for download of the rpm  which can then be copied onto the Oracle Database Appliance and applied. If you have multiple Oracle Database Appliances this is an ideal way to download once and apply to many . This will also allow you to  be able to catalog the RPM's since you might have to uninstall the RPM's prior to an ODA Patch install.

Method 2

The  second method is described in MOS Note  ID  1461798.1. This Notes explains how to download RPM's directly onto the ODA. Oracle Strongly Warns against a couple of things here
  1. Do not set the yum repository directly on the database appliance 
  2. Try not to install RPM's with complex dependencies since a rollback will be complicated
  3. If not sure what to Open an SR with Oracle prior to installing the RPM's 
Download the zip file from   MOS Note  ID  1461798.1 called ODA
unzip it under /opt/oracle/oak/odarpm   <-- New directory

It will setup the yum repository and test connectivity ot the internet.
If you are usng a Proxy server. you will have to setup the http_proxy variable

export http_proxy="http://proxyserver:port"
  ./getrpm [RPM_NAME]   -- get the rpm
   yum deplist [RPM Name]  -- validate dependencies
   rpm -ivh [/PATH/RPM_NAME] -- Install the rpm
Always catalog all the rpm and their dependencies you have installed since this will complicate the ODA patching process and might cause components to fail. My Personal recommendation to use Method 1. designate a box that is non prod as the primary source of RPM's and deploy to all ODA's from that Box.

Wednesday, July 25, 2012

Oracle Database Appliance Patch 2.3.0 release and new features

Oracle Database Appliance Patch 2.3.0 was just released to the public it seems.
 A couple of things 2.3 is not a cumulative patch if you are running 2.1 you will need to apply the 2.2.0 patch before proceeding to 2.3.0 .
if you have secured your ODA using STIG Implementation Script for Oracle Database Appliance [ID 1461102.1] there is now a step to disable the STIG security.
Database Patching is now Rolling upgradable , Yay

There is  a new
oakcli show databases
to verify database version before and after a patch.
There is also a
oakcli upgrade database
in case you are still on to upgrade  the database.

There are a lot of new features in this patch

Feature #1
Multi-homes and Multi-DB support
Supported versions are and
Feature #2
oakcli create
oakcli create and oakcli delete are used to create and delete new databases and database homes
Feature #3
Db Configuration parameters.
 # oakcli show db_config_params -detail  -- to look at config parameters

  # oakcli create db_config_params -conf newconf  -- to create a config file based for use with oakcli create

Most of the data is from the Readme . I will install it and see how it works out and what other undocumented stuff is in the patch

Wednesday, July 04, 2012

Using Rman Active Duplicate to create a Standby from a standby

There comes a time when you need to find ways to get something done in an innovative manner with as little interruption to the primary as possible. This was the case that i was working on to rehost a database where i had network issues and a standby database available. In comes Rman Active Duplicate.
Rman active duplicate was available in  11.1 and can be used to duplicate a database as well as create a standby . The real kicker was apparently due to BUG 11715084 you will hit an error like below.

channel ORA_AUX_DISK_1: SID=135 device type=DISK
RMAN-571: ===========================================================
RMAN-569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-571: ===========================================================
RMAN-3002: failure of Duplicate Db command at 02/02/2011 13:28:25
RMAN-5531: a mounted database cannot be duplicated while datafiles are fuzzy

The patch for this bug is available for & . But i had to get  a backport to for AIX. After the patch is installed it is simple to run rman active duplicate.
A sample script is below

 connect target  abc/abc@olddb

connect auxiliary sys/abc@newddb

run {

allocate channel prmy1 type disk;

allocate channel prmy2 type disk;

allocate auxiliary channel stby type disk;

allocate auxiliary channel stby2 type disk;

duplicate target database for standby from active database


   set db_unique_name='newdb'

   set log_archive_max_processes='25'

  set fal_client='newdb'

  set control_files='+DATA01/control01.ctl'


  set fal_server='olddb'

  set standby_file_management='AUTO'

  set log_archive_config='dg_config=(olddb,newddb)'

  set log_archive_dest_1='service=olddb ASYNC valid_for=(ONLINE_LOGFILE,PRIM

ARY_ROLE) db_unique_name=olddb'



Friday, May 25, 2012

So I presented , Collaborate 12/#C12LV and Learning

Just Last Night i received the results of my Collaborate 12 or #C12LV presentation. This was an interesting time for me since i had not presentation at a public forum before Collaborate. I submitted my abstract in hope to share some of the things i learned and work on in my day to day to job. It is very hard and very intimidating to think about talking to a diverse group of people. The Logical person in me was calculating questions and preparing answers for questions i had not even been asked.
But then internally My Boss and a couple of people gave me this solid piece of advise. If you know what you are talking about  and are confident about it, The Crowd cannot scare you. This advice allowed me to focus on content rather than audience and the evaluation results below have proven that if you have the right content and understand what you are talking about the audience will like it.

Session Number: 371
Session Title: High Availability Boot Camp: Migrating from Single Instance to RAC and Upgrading - A Dataguard Success Story
Number of Respondents: 14

5-Point Scale (5=extremely satisfied / 1=not at all satisfied)
#1: Primary speaker’s knowledge of the material                                              4.93
#2: Primary speaker’s presentation skills                                                               4.86
#3: Did this session meet your expectations?                                                      4.86
#4: Can you apply what you learned to your job?                                              4.50
#5: Would you like to see more sessions from the primary speaker?        4.64
#6: Would you like to see more sessions on this topic?                                   4.64
Overall Mean                                                                                                                     4.74

Please list any comments regarding this session and/or areas within the topic you would like to see covered in more detail.

Excellent - best session that I attended today. Excellent and innovative solution for migrating to RAC.
Great practical point of view!
This was the best High Availability session thus far! Most excellent!


I do want to thank all the people that reviewed my presentation and all the onsite and offsite support from IOUG , Dan Morgan, Leightonn, Yury , Arup and all the countless number of new acquaintances .

Thursday, May 10, 2012

Oracle Database Appliance Offline Configurator

If you have an ODA you have been thru the Oracle Database Appliance configurator. Oracle Also provides an offline version for people to build the configs before even going to build the box.
Just a quick note that if you used the ODA Offline Configurator  V2.1 the files will not work with configurator 2.2
to fix that please add the following to your old config file

#onecommand.params generated by GUI tool
# Configuration information

This will allow the 2.1 config file to be loaded into and modified by the 2.2 configurator 

Sunday, April 29, 2012

ODA Patch 2.2.0. Now Available

The First Oracle Database Appliance Significant version patch is now available ODA Patch 2.2.0  is a very significant patch since it upgrade the OS from 5.5 to UEK 5.8 and also upgrade the database from to
Change Log Entries
  • This patch will upgrade the existing OEL 5.5 to UEK 5.8.
  • End-User GI/RDBMS GI PSU2 clone files.  This patch can upgrade the existing[4,5] to
  • CHM is Re-enabled again. 
Patch 13858874 is what is needed .
I will update this blog post with my experience updating to 2.2.0

Please note the following
Issue:  Unable to Roll back to previous versions
Workaround : Roll back to previous versions is not supported.

MIgrating from Single Instance to RAC and Upgrading using Data guard

As Promised Embedded below is my presentation and paper that i presented at this years Collaborate Conference. Looking for feedback from the community 

Google Search