I just lately decided to test out a rollback method that we had been thinking of making use of while upgrading our databases to Oracle 11g. We ended up utilizing Oracle 10g at the time and we experienced the adhering to info guard established-up:
Major DB, 10.2..four
Bodily standby DB 1, 10.two..four
Actual physical standby DB 2, ten.2..four
Note: The operating method that we are managing is Home windows Server 2003, SP2. Though these guidelines are for the Windows surroundings they will also work on any other setting, the only distinction currently being some of the Home windows specific configuration, these kinds of as Home windows provider development.
The Plan For Upgrading Information Guard
The prepare was to up grade both knowledge guard DBs to 11g at the identical time as the principal. As part of the improve we necessary to have a failback prepare so that if the improve was to are unsuccessful we would be capable to restore the principal and standby databases back again to a position in time ahead of the improve took spot. We didn’t want to have to rebuild the standby databases if the upgrade failed because that would be really time consuming and call for a lot much more perform. The major database rollback strategy was comparatively easy:
Shutdown the databases
Get a “snap” of the LUNs at the SAN amount
Deliver the databases up and operate in the update
Fall snap if update profitable
Rollback to the snap if the up grade unsuccessful
The dilemma that we faced with the standby databases was that we did not have the capacity to snap the disks on the SANs that they ended up working on because the SAN technology was older and we didn’t have the licenses for it. We also experienced some questions about the configuration of knowledge guard and how it would work:
If we rollback the main DB, how do we roll back again the physical standby DBs if they have been implementing logs during the update?
Can guardia civil end the standby DBs implementing logs, rollback the main DB to the snap edition and begin shipping logs yet again?
Will the bodily standby DB pick up from the place it still left off if we get rid of the logs which were produced although the update was working?
If the principal DB was at archivelog sequence a hundred at the time of the snap and it generates fifty logs through the update approach and we snap it again will it keep on from sequence a hundred once again?
We manufactured educated guesses about specifically what we considered but the inquiries previously mentioned must be in a position to give you some thought about the kinds of inquiries we have been uncertain of prior to we had finished any testing. The ideal way to show anything at all is to actually take a look at it out so I set out to test our idea. What was the principle? Nicely, we believed (I mean hoped… ) that if we cancelled the log transport while the upgrade was operating (DEFER the log archive locations), rolled the principal DB back to the snap variation of the disks, deleted all the logs which had been produced whilst the improve was managing and then enabled the log archive places again that the info guard actual physical standby databases would choose up from the place they remaining off, none the wiser to the unsuccessful improve on the main databases.
What We are Going to Test
Right here is a listing of specifically what I will be going for walks via in the illustration under:
Configure info guard on variation ten.2..4 (even though this will implement to 11g info guard, also)
Generate the backup of your principal DB in preparing to restore it to generate your actual physical standby databases
The restore approach to set up your physical standby databases
How to get log transport working from the principal to the standby databases
Configuring the rollback method previously mentioned
Simulation of a failed update endeavor
Rolling back to the snap version of the database (at the SAN degree)
A check to see if it is all working as was the scenario prior to the upgrade
SAN Vs Flashback Databases – Personalized See…
I ought to point out that for this take a look at I have labored with the storage team to get a snapshot of the disk(s) just before any up grade perform is full. Individually, I uncover that this is a significantly greater solution for this kind of operate than making use of Oracle’s flashback engineering for a number of causes:
Flashback demands a massive quantity of place to store any alterations
I have encountered troubles when using Oracle flashback technological innovation whilst executing an upgrade which corrupted my confirmed restore level. really undesirable!
The SAN snapshot is very quick, clear and calls for no configuration changes from an Oracle level of view – just a cleanse shutdown of the DB although the snapshot is taken
So, in this take a look at I display you how to generate a standby DB from your major DB with all of the instructions that I required to use. Hopefully it is all self-explanatory for a well-informed Oracle DBA. If not, remember to inquire any inquiries at the bottom of the website page in the remarks segment or fall me an e-mail and I will do my best to support.
Action-by-Phase Manual to Generating and Configuring Data Guard Physical Standby
On your main DB, shrink the dimensions of DB as considerably as feasible so that the backup, duplicate and restore to the standby database is faster. I frequently use this small script to do it dynamically for a particular tablespace. It will try to decrease each tablespace by 500MB, but you can configure that to whatever you want it to be and do it for every single tablespace by removing the “exactly where tablespace_title =” portion of the assertion.