I recently determined to test out fmwolfpack.com/ a rollback technique that we were being thinking about employing though upgrading our databases to Oracle 11g. We were being employing Oracle 10g on the time and we had the next facts guard set-up:

Primary DB,
Actual physical standby DB 1,
Bodily standby DB 2,

Take note: The working method that we’ve been functioning is Home windows Server 2003, SP2. Though these recommendations are to the Windows atmosphere they will also perform on almost every other setting, the one variance staying a lot of the Home windows unique configuration, for instance Windows support creation.

The Strategy For Upgrading Knowledge Guard

The program was to enhance each details guard DBs to 11g for the exact time because the major. As part from the upgrade we wanted to obtain a failback approach to ensure that if the update was to fall short we’d manage to restore the principal and standby databases back again into a place in time right before the update happened. We did not want to need to rebuild the standby databases in the event the upgrade unsuccessful simply because that will be really time intensive and demand a whole lot more function. The key database rollback strategy was relatively straightforward:

Shutdown the databases
Consider a “snap” from the LUNs at the SAN stage
Carry the databases up and operate while in the enhance
Drop snap if update successful
Rollback towards the snap in the event the update failed

First Concerns?

The challenge that we faced while using the standby databases was that we did not have the ability to snap the disks about the SANs that they were being managing on due to the fact the SAN engineering was more mature and we did not have the licenses for it. We also experienced some inquiries in regards to the configuration of data guard and just how it could get the job done:

If we rollback the primary DB, how do we roll back again the physical standby DBs should they have been implementing logs in the course of the update?
Can we quit the standby DBs making use of logs, rollback the principal DB to the snap version and start transport logs all over again?
Will the actual physical standby DB pick up from exactly where it still left off if we eliminate the logs which had been developed although the update was jogging?
If the most important DB was at archivelog sequence a hundred within the time with the snap and it makes 50 logs all through the enhance process and we snap it again will it keep on from sequence 100 once more?

We made educated guesses about just what exactly we believed however the concerns higher than must be in a position to give you some concept with regard to the kinds of issues we have been not sure of in advance of we had done any testing. The ultimate way to verify nearly anything would be to truly try it out so I got down to take a look at our theory. What was the speculation? Nicely, we assumed (I imply hoped… ) that if we cancelled the log delivery though the upgrade was working (DEFER the log archive places), rolled the main DB back again into the snap model on the disks, deleted all of the logs which ended up developed even though the improve was working then enabled the log archive locations yet again that the data guard physical standby databases would decide up from where by they remaining off, none the wiser into the failed enhance within the most important databases.