Monday, November 23, 2015

Change Data guard Protection Mode

Change data guard protection mode from Maximum Performance to Maximum Availability.

The default is Maximum Performance.

SYNC | ASYNC = Specifies whether the redo data is to be received at the destination before the transaction is committed. ASYNC is default.

AFFIRM | NOAFFIRM = Control whether the redo destination acknowledges received redo data. NOAFFIRM is the default for ASYNC if not specified. AFFIRM is the default for SYNC for if not specified.

NET_TIMEOUT = Specifies the time in seconds that the primary database log writer will wait for a response from the Log Network Service (LNS) before terminating the connection and marking the standby (destination) as failed. The default value is 30 seconds.

REOPEN = Specifies the time in seconds that the log writer should wait before attempting to access a previously failed standby (destination). The default is 300 seconds.

Use LGWR SYNC if you use either Maximum Protection OR Maximum Availability. 
so here LGWR is directly connected with RFS,henc there will be no LNS process. 

Check Primary database:

SQL> select PROTECTION_MODE,PROTECTION_LEVEL from v$database;


 PROTECTION_MODE      PROTECTION_LEVEL
-------------------- --------------------

 MAXIMUM PERFORMANCE  MAXIMUM PERFORMANCE


---On Primary Database
 SQL> select status,instance_name,database_role,protection_mode from v$database,v$instance;


  STATUS INSTANCE_NAME DATABASE_ROLE PROTECTION_MODE
  ------ ------------- ------------- --------------------

  OPEN    orcl          PRIMARY       MAXIMUM PERFORMANCE

 SQL> alter system set log_archive_dest_2='SERVICE=ORCLSTBY LGWR SYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=orclstby' scope=both;

 SQL> alter database set standby database to maximize availability;


---On Standby Database
 SQL> select status,instance_name,database_role,protection_mode from v$database,v$instance;


 SQL> alter database recover managed standby database cancel;

 SQL>  alter system set log_archive_dest_2='SERVICE=ORCL LGWR SYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=orcl' scope=both;


 SQL> alter database recover managed standby database using current logfile disconnect from session;

 stby->select PROTECTION_MODE,PROTECTION_LEVEL FROM V$DATABASE;

 PROTECTION_MODE      PROTECTION_LEVEL
-------------------- --------------------
 MAXIMUM AVAILABILITY MAXIMUM AVAILABILITY


 prod-> select PROTECTION_MODE,PROTECTION_LEVEL FROM V$DATABASE;

 PROTECTION_MODE      PROTECTION_LEVEL
-------------------- --------------------

 MAXIMUM AVAILABILITY MAXIMUM AVAILABILITY









No comments:

Post a Comment