RE: Block Change Tracking + Stand By DB and Switch Over

  • From: "Matthew Parker" <dimensional.dba@xxxxxxxxxxx>
  • To: <csshah85@xxxxxxxxx>, "'Oracle L'" <oracle-l@xxxxxxxxxxxxx>
  • Date: Fri, 19 Feb 2016 06:27:24 -0800

I think you are trying to dance on the head of pin here.

 

OPINION…….

 

There is nothing anywhere that determines from a contractual perspective when a 
Standby Database exists.

We can look at it from a technical perspective and state a standby database 
exists as soon as there is a complete database with a standby controlfile.

 

https://docs.oracle.com/cd/E11882_01/server.112/e41134/create_ps.htm#SBYDB4722

 

Table 3-2 Creating a Physical Standby Database


Reference

Task

Database


 <https://docs.oracle.com/cd/E11882_01/server.112/e41134/create_ps.htm#i70835
Section 3.2.1

 <https://docs.oracle.com/cd/E11882_01/server.112/e41134/create_ps.htm#i70835
Create a Backup Copy of the Primary Database Datafiles

Primary


 <https://docs.oracle.com/cd/E11882_01/server.112/e41134/create_ps.htm#i68937
Section 3.2.2

 <https://docs.oracle.com/cd/E11882_01/server.112/e41134/create_ps.htm#i68937
Create a Control File for the Standby Database

Primary


 <https://docs.oracle.com/cd/E11882_01/server.112/e41134/create_ps.htm#i70517
Section 3.2.3

 <https://docs.oracle.com/cd/E11882_01/server.112/e41134/create_ps.htm#i70517
Create a Parameter File for the Standby Database

Primary


 <https://docs.oracle.com/cd/E11882_01/server.112/e41134/create_ps.htm#i58318
Section 3.2.4

 <https://docs.oracle.com/cd/E11882_01/server.112/e41134/create_ps.htm#i58318
Copy Files from the Primary System to the Standby System

Primary


 <https://docs.oracle.com/cd/E11882_01/server.112/e41134/create_ps.htm#i72105
Section 3.2.5

 <https://docs.oracle.com/cd/E11882_01/server.112/e41134/create_ps.htm#i72105
Set Up the Environment to Support the Standby Database

Standby


 <https://docs.oracle.com/cd/E11882_01/server.112/e41134/create_ps.htm#i57454
Section 3.2.6

 <https://docs.oracle.com/cd/E11882_01/server.112/e41134/create_ps.htm#i57454
Start the Physical Standby Database

Standbyç========


 <https://docs.oracle.com/cd/E11882_01/server.112/e41134/create_ps.htm#i77231
Section 3.2.7

 <https://docs.oracle.com/cd/E11882_01/server.112/e41134/create_ps.htm#i77231
Verify the Physical Standby Database Is Performing Properly

Standby

 

At section 3.2.6 we can say the physical standby exists using Oracle’s own 
words as to when it is startable.

 

It is a little different when it is a previous primary. After failover 
technically speaking it is not a standby until you do the role transition of 
primary to standby and at that point then the byte is flipped in the 
controlfile to be a standby controlfile and v$database shows STANDBY in the 
controlfile_type column.

 

From a technical perspective I believe you are on fairly firm grounds that it 
is not a standby any more until the role transition happens on that old primary 
and the controlfile becomes a standby controlfile. At this point the database 
looks no different than a recovered backup, except for the transactions in the 
online redologs and it is a regular controlfile instead of a backup 
controlfile. Also I have had production database with disabled standby 
configurations and no standby exists anywhere to go with that configuration.

 

Assuming that to be true then as long as you disable BCT before the role 
transition on the original primary to be a standby then you should be within 
contractual compliance.

 

This is where you are really dancing on the head of the pin.

1.       You have to argue and justify that you are within contractual 
compliance instead of not using BCT and being in the clear.

2.       You have to ensure that no DBA in your company ever makes a mistake 
and misses removing the BCT before the role transition from primary to standby. 
If it is ever removed after role transition then you are technically in 
violation.

3.       You have to ensure no one ever turns on full Data Guard automation 
causing the role transition of primary to standby automatically.

4.       You have to remember to enable it on the new primary side after 
failover.

 

On a side note you would need to check that you can remove block change 
tracking when the database is in the crashed state, before transitioning 
primary to standby. I have never executed the command at that exact point.

 

I think you are simply setting yourself up for failure. You have limited 
yourself in full use of the Data Guard features (full automation) and you are 
expecting humans to be perfect. There are too many places where the human can 
make a mistake and make your company in non-compliance of your Oracle licenses.

 

My opinion.

 

Matthew Parker

Chief Technologist

Dimensional DBA

425-891-7934 (cell)

D&B 047931344

CAGE 7J5S7

 <mailto:Dimensional.dba@xxxxxxxxxxx> Dimensional.dba@xxxxxxxxxxx

 <http://www.linkedin.com/pub/matthew-parker/6/51b/944/> View Matthew Parker's 
profile on LinkedIn

 <http://www.dimensionaldba.com/> www.dimensionaldba.com

 

From: oracle-l-bounce@xxxxxxxxxxxxx [mailto:oracle-l-bounce@xxxxxxxxxxxxx] On ;
Behalf Of Chirag Shah
Sent: Friday, February 19, 2016 2:54 AM
To: Oracle L
Subject: Block Change Tracking + Stand By DB and Switch Over

 

Hello Experts,

 

For BCT in standby, we need to have Active Data Guard License as per the Doc ID 
468576.1 ,"You can only enable block change tracking at a physical standby 
database if a license for the Oracle Active Data Guard option is enabled."

 

But what happen if we switch over role while having BCT file on Primary DB and 

do not have Active Dataguard license ? 

 

We don't use recovery catalogue and taking backups only from Primary DB with 
control file as RMAN repository. If we switch over to standby then do we also 
require to create BCT file to New primary DB ? then both the Primary and 
Standby DBs would have BCT files..?? so in that case shall we need to disable 
BCT before switch over ?

 

We are on 11g (11.2.0.3) with one Physical Standby DB

 

Any thoughts.. ? Thanks in advance..

 

Thanks & Regards,

CS

Other related posts: