Vous êtes sur la page 1sur 27

11g(R1/R2) Data guard Enhancements

Suresh Gandhi
} Agenda

} What is DATA GUARD ?


} Types of Data Guard Databases
} 11g Release 1 Enhancements
} 11g Release 2 Enhancements
} Active Data guard
} Snapshot Standby Database
} More Features
} Rolling Upgrade and Physical Standby
} Q&A

2
} Data Guard Overview

Data Guard

Standby Plus more

High Availability & Disaster


Recovery Solution

3
} Provides ….

4
} Data guard Databases

5
} 11G R1 Enhancements

Release 1
New
Features

6
} R2 - Enhancements

Release 2
New
Features

7
} R2- New Features

Release 2
New
Features

8
} Active and Snapshot Standby

Traditional
11g Functionality
11gSnapshot
Active Standbyuntil 10g
DataGuard

9
} Active Data Guard Benefits

10
} Turn on Physical Standby to Active Standby
Stop redo apply

Database in
standby mount
mode

Open readonly

Open mode
changed to read
only

Start the redo


apply again using
log file (SRL’s)

Status changed to
read only apply
11
} Turn on Physical Standby to Snapshot Standby
Once sync check,
convert standby to
snapshot

Open database

Read write
mode

Need to close
database

Switched back to
physical standby
12
} Additional Info – Active / Snapshot

WHAT OPERATION ALLOWED IN ACTIVE • SOME IMPORTANT POINTS FOR SNAPSHOT


DATA GUARD ? STANDBY DATABASE
SELECT statements • PHYSICAL STANDBY DATABASE SHOULD BE IN
 Complex queries FLASHBACK MODE
 Calling of stored procedures • NO REAL TIME QUERY OR DATA
 Use of database links to redirect DML to • NO FAST START FAILOVER IN THIS MODE
Primary • NO SWITCHOVER/FAILOVER UNTIL
 Use of stored procedures to call remote CONVERTED TO PHYSICAL STANDBY
stored procedures via database links • Free of Licence
 Use of SET ROLE • POINTS
 Use of ALTER SESSION and ALTER 1. Configure the Flash Recovery Area
SYSTEM 2. Set the Retention Target
 No Datatypes restrictions like Logical 3. Enable Flashback Database
Standby
 Additional TEMPFILES can be created for
Sorts
 Flashback Query : SELECT … AS OF
<SCN>
Additional License

13
} 10g Equivalent Snapshot commands
Prepare the physical standby database to be activated
SQL> ALTER SYSTEM SET DB_RECOVERY_FILE_DEST_SIZE=20G;
SQL> ALTER SYSTEM SET DB_RECOVERY_FILE_DEST='/arch/oradata'

Prepare the primary database to have the physical standby be diverged.

Archive the current log file.

SQL> ALTER SYSTEM ARCHIVE LOG CURRENT;

Cancel Redo Apply and create a guaranteed restore point.


SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE CANCEL;
SQL> CREATE RESTORE POINT restore_pt GUARANTEE FLASHBACK DATABASE;

Activate the physical standby database.

SQL> ALTER DATABASE ACTIVATE STANDBY DATABASE;


SQL> STARTUP MOUNT FORCE;
SQL> ALTER DATABASE SET STANDBY DATABASE TO MAXIMIZE PERFORMANCE;
SQL> ALTER DATABASE OPEN

Revert the ac4vated database back to a physical standby database.


SQL> STARTUP MOUNT FORCE;
SQL> FLASHBACK DATABASE TO RESTORE POINT restore_pt;
SQL> ALTER DATABASE CONVERT TO PHYSICAL STANDBY;
SQL> STARTUP MOUNT FORCE;

14
} DATGUARD – Still More Features

15
} More Features – RMAN Active database Duplication

}Steps RMAN> run {


–Create a pfile with only db_name=stby allocate channel prmy1 type disk;
–Create directory structure for datafile locations allocate channel prmy2 type disk;
–Create directory structure for dump locations
–Create a password file (must match with target)
allocate channel prmy3 type disk;
–Listener & Tnsnames entries for new standby allocate channel prmy4 type disk;
database allocate auxiliary channel repstby type
–Startup nomount with pfile disk;
–Run the rman command in other box duplicate target database for standby from
active database
spfile
parameter_value_convert 'emrep','repstby'
Log File  set db_unique_name='repstby'
set db_file_name_convert='C:\','F:\'
set log_file_name_convert='C:\','F:\'
;
}
16
} More Features – Redo Compression

} Requires Advanced Compression features


} Compress redo as it is transmitted data
} Automatically compress the data as it only resolves gaps
} Helpful and useful in bandwidth constrained locations
} Syntax:-
} LOG_ARCHIVE_DEST_2=‘Service=stby Async compression=ENABLE’

17
} More Features – Heterogenous database support
} Oracle 10g Dataguard support mixed environments 32bit and 64 bit
configuration

} Oracle 11G Dataguard supports mixed Windows/Linux in same


configuration
} Only Physical Standby
} Same Endianess required on all platforms

} Metalink : 413484.1

18
} More Features: Lost Write Detection
} Due to hardware or storage issues lost writes can happen while transmission
and blocks may be stale.

} Very hard to diagnose in such of case of corruption

} Feature:-
– Compares version of Blocks
} Between Standby blocks and redo stream
} Version discrepancy can be either standby or primary
– If Primary Database block corruption is detected  Resolved
} Using standby failover and
} Restore data consistency

} New Initialization parameter


– ALTER System set db_lost_write_protect = NONE/TYPICAL/FULL
– 5% impact but increase protection

19
} More Features: Automatic Block recovery
} 11g R2 automatically recovers corrupted blocks from standby copies of
blocks

} Automatic Block Media Recovery also automatically repair corrupted blocks


discovered in the physical standby databases

} Reduce recovery time in block corruption cases instead of restoring from


tape or disks

} RMAN command RECOVER BLOCK can be used for manual recovery and
its check for all suitable or consistent blocks across several copies of
backups or
– Clause can be added RECOVER BLOCK … EXCLUDE STANDBY then wont
check in standby

} Automatic block recovery is applicable only in physical corruptions like


} When checksum is invalid
} Block contains all zeros
} Block header is fractured

20
} More Features: Redo Flush
} Yes, Redo can be flushed

} Can be done when the primary is in mount mode

} To avoid minimal loss of data and allowed failover to be performed


without data loss

} Syntax:-
– ALTER System FLUSH Redo to <target DB Name>

21
} More Features: Sync with Primary
} New command
– ALTER SESSION SYNC WITH PRIMARY
– WAIT FOR STANDBY TO BE SYNCHRONIZED WITH PRIMARY
– FAILS IF REDO APPLY OR REDO TRANSPORT IS OFF
REPORT TRANSPORT AND APPLY LAGS

22
} More Features: STANDBY_MAX_DATA_DELAY

23
} More Features: ROLE Based services
} Services can be created and start based on the database ROLE, viz a new
addition sys_context (Database ROLE)

} In R2 services can be attached via srvctl

} Service can failover when using Cluster or Oracle restart

} 11gR1 to use triggers based on Database role


– Example Trigger

24
} Rolling Upgrade : Transient Logical Standby
Physical standby must be converted to Logical Standby and uses Flashback
as fall out plan
Downtime for upgrade is only the SWITCHOVER TIME

25
} Finally, Monitoring Views
} GAP_STATUS , additional column in v$archive_dest – GAP or NO
GAP

} V$dataguard_stats for transport/apply lag

} V$REDO_DEST_RESP_HISTOGRAM
– Useful when need to analyse network latencies by checking transport lag

} V$STANDBY_EVENT_HISTOGRAM

26
Thank you!

Q&A

Internal 27