Post on 21-Jan-2016
description
transcript
Oracle Data Guard: Maximum Data Protection at Minimum Cost
Ashish RaySenior Product Manager
Oracle Corporation
Session Id: 40056
Darl KuhnSenior DBA, Staff Engineer
Sun Microsystems
Agenda
Oracle Data Guard – a Quick Introduction Data Guard Features in Oracle Database 10g Customer Success Story – Sun Microsystems Summary & Q/A
What is Oracle Data Guard?
Oracle’s disaster recovery solution for Oracle data
Feature of Oracle Database Enterprise Edition
Automates the creation and maintenance of one or more transactionally consistent copies (standby) of the production (or primary) database
If the primary database becomes unavailable (disasters, maintenance), a standby database can be activated and assume the primary role
Oracle Data Guard Focus
Data Failures & Site Disasters:
• Also addresses human errors & planned maintenances
– Data Protection– Data Availability– Data Recovery
Data is the core asset of the enterprise!All 3 are important!
Oracle Data Guard Architecture
NetworkBroker
ProductionDatabase
Logical StandbyDatabase Open for
Reports
SQLApply
Transform Redo to SQL
AdditionalIndexes & MVs
Physical StandbyDatabase
DIGITAL DATA STORAGE
DIGITAL DATA STORAGE
Backup
Redo Apply
Sync or Async Redo Shipping
Data Guard Redo Apply
Physical Standby Database is a block-for-block copy of the primary database Uses the database recovery functionality to apply changes Can be opened in read-only mode for reporting/queries Can also be used for backups, offloading production database
PrimaryDatabase
Physical StandbyDatabase
Redo Shipment
Network
Redo Apply
DIGITAL DATA STORAGE
Backup
Standby Redo Logs
Data Guard Broker
Data Guard SQL Apply
Logical Standby Database is an open, independent, active database Contains the same logical information (rows) as the production database Physical organization and structure can be very different Can host multiple schemas
Can be queried for reports while logs are being applied via SQL Can create additional indexes and materialized views for better query performance
AdditionalIndexes &
Materialized Views
Redo Shipment
NetworkContinuously
Open for Reports
Transform Redo to SQL and Apply
Data Guard Broker
PrimaryDatabase
Logical StandbyDatabase
Standby Redo Logs
Agenda
Oracle Data Guard – a Quick Introduction Data Guard Features in Oracle Database 10g Customer Success Story – Sun Microsystems Summary & Q/A
Oracle Data Guard 10g Objectives
Establish Data Guard as an extremely– easy-to-use– low-cost– comprehensive– reliable
Disaster Recovery solution for enterprise data
Overview of Objectives
Ease of use – simplified SQL, easy to create, manage and administer standby databases, simplified GUI focused on best practices
Low cost – businesses can leverage existing resources to implement Data Guard, zero integration costs
Comprehensive – feature-rich and flexible
Reliable – a rock-solid solution for protection of mission critical business data
Data Guard 10g New Features
General new features– Real Time Apply– Flashback Database Integration
SQL Apply new features – Zero Downtime Instantiation– Rolling Upgrades– Additional Datatypes
Data Guard Broker & Enterprise Manager new features – RAC integration– Simplified browser-based interface focused on best practices
Real Time Apply Redo data is applied to the standby database as soon as it is
received from the primary database
– In Oracle9i Data Guard this apply has to wait till an archivelog is created on the standby database
For Redo Apply:ALTER DATABASE RECOVER MANAGED STANDBY DATABASE USING CURRENT LOGFILE
For SQL Apply:ALTER DATABASE START LOGICAL STANDBY APPLY IMMEDIATE
When real time apply is enabled, RECOVERY_MODE column in V$ARCHIVE_DEST_STATUS displays “MANAGED REAL TIME APPLY”
An up-to-date Physical/Logical
StandbyDatabase
MRP/ LSPRFS
StandbyRedo Logs
ARCH
Real Time Apply Architecture
Archived Redo Logs
Archived Redo Logs
PrimaryDatabase
Transactions
LGWR
Online Redo Logs
ARCH
Oracle Net
Real Time Apply
Real Time Apply – Benefits
Standby databases now more closely synchronized with the primary
– More up-to-date, real-time reporting– Faster switchover and failover times
Reduces planned and unplanned downtime Better Recovery Time Objective (RTO) for DR
Existing Site Recovery Tradeoffs
Log apply may be delayed to protect from user errors but:– Switchover/Failover gets delayed– Reports run on old data
After failing over to standby, production DB must be rebuilt
Primary Database Standby DatabaseRedo
Shipment
DelayedApply
Reporting on delayed data
Flashback Database
A new strategy for point in time recovery Eliminate the need to restore a whole
database backup Integrated seamlessly with RMAN
– Think of it as a continuous backup– Restores just changed blocks
It’s fast - recover in minutes, not hours It’s easy - single command restore
RMAN> FLASHBACK DATABASE TIMESTAMP to_timestamp ('2003-08-15 16:00:00', 'YYYY-MM-DD HH24:MI:SS');
Enhanced DR with Flashback Database
Flashback DB removes the need to delay application of logs Flashback DB removes the need to reinstantiate primary after failover Real-time apply enables real-time reporting on standby
Real Time Apply
No Delay!
Real TimeReporting
Flashback Log
Flashback Log
Primary: No reinstantiation after failover!
RedoShipment
Primary Database Standby Database
SQL Apply: Zero Downtime Instantiation
Logical standby database can now be created from an online backup of the primary database, without shutting down or quiescing the primary database
– No shutdown implies no downtime of production system
– No quiesce implies no wait on quiesce and no dependence on Resource Manager
Rolling Upgrades
Major ReleaseUpgrades
Patch SetUpgrades
Cluster Software & Hardware Upgrades
Initial SQL Apply Config
ClientsRedo
Version X Version X
1
BA
Switchover to B, upgrade A
Redo
4
Upgrade
X+1X+1
BA
Run in mixed mode to test
Redo
3
X+1X
A B
Upgrade node B to X+1
Upgrade
LogsQueue
X
2
X+1
A B
SQL Apply: Additional Data Types
SQL Apply now supports the following additional data types:– Multi-byte CLOB– NCLOB– LONG– LONG RAW– BINARY_FLOAT– BINARY_DOUBLE– IOT-s (without overflows and without LOB columns)
Allows logical standby databases to recover and protect a wider variety of data, thus increasing the overall database protection and recovery options for Data Guard
Enterprise Manager New Features
Streamlined browser-based interface that enables complete standby database lifecycle management
Focus on:– Ease of use– Management based on best practices– Pre-built integration with other HA features
RAC Support – Broker
Now possible to use the Broker to create and manage configurations that contain RAC primary and RAC standby databases
Data Guard Broker interfaces with Oracle Clusterware such that it has control over critical operations during specific Data Guard state transitions
– Switchovers, failovers, protection mode changes, state changes
RAC Primary
Two standby dbs
Instance specific
Example – Ease of Use
Switchover using Enterprise Manager is now literally two mouse clicks
Switched!
Agenda
Oracle Data Guard – a Quick Introduction Data Guard & Features in Oracle Database 10g Customer Success Story – Sun Microsystems Summary & Q/A
Case Study
Oracle Data Guard at Sun MicrosystemsDarl Kuhn
Senior DBA, Staff Engineer
Business decision considerations Architecture Implementation Features we use
Project Requirements
Patch and Knowledge databases for Sun Support Services
7x24 High Availability– Minimize scheduled downtime– Minimize unscheduled downtime
Disaster Recovery (DR) protection
Do more with less resources
Minimize costs
Minimize complexity
Solutions We Investigated
Backup the database, restore from tape Operating System failover Remote Mirroring Quest’s SharePlex Oracle Advanced Replication (OAR) Oracle Real Application Clusters (RAC) Oracle Data Guard (Standby)
We Chose Data Guard
7x24 DR protection Simple to implement Requires DBA with B&R skills Didn’t need special System Administration
skills or consultants Low maintenance (do more w/less DBAs) No extra licensing (built into Oracle9i)
Implementation Decisions
Which data protection mode?– Maximum Protection– Maximum Availability– Maximum Performance
We chose Maximum Performance Two identical servers Directory structures the same Database name the same Introduce a delay in application of redo
Maximum Performance
.
PrimaryDatabase
Primary DatabaseProduction Site
LocalArchiveRedo
ARCn
Standby DatabaseServer
Users
StandbyDatabase
CopiedArchiveRedo
ManagedRecovery
Process (MRP)
LGWR
On-lineRedoOnlineRedo
Remote FileServer (RFS)
Fetch ArchiveLog (FAL)
OracleNet
CopiedArchiveRedo
LocalArchiveRedo
Database Architecture
50M archive redo logs 1 Gig of redo per day Primary in Colorado Standbys in North Carolina, Holland and
Singapore Database size currently 60 Gig Hardware Sun 6500, 280R, 4500 Storage T3 partner pair fiber channel
Implementation of Physical Standby
1. Ensure primary database is in archive log mode
Note: In Data Guard 10g, you also need to implement a password file for both Primary and Standby
2. Take backup of primary database datafiles – options:• RMAN• Hot• Cold• Do not backup controlfiles or online redo logs
Using RMAN to Build Standby
On Primary:
a) RMAN> backup database;b) Copy backup pieces to Standbyc) Create a Standby controlfile and copy to
Standby
Then on Standby:
a) SQL> startup nomount;b) SQL> alter database mount standby database;c) RMAN> restore database;d) SQL> alter database recover managed standby
database disconnect;
Implementation of Physical Standby
3. Copy backup datafiles to standby server
4. Create a standby controlfile
5. Copy the standby controlfile to standby server
6. Configure primary init.ora or spfile
7. Copy primary database init.ora file to standby server and make modifications for standby database
8. Configure Oracle Net
9. Startup and mount standby databaseSQL> startup nomount;SQL> alter database mount standby database;
Startup syntax is simplified in Oracle Data Guard 10g
SQL> startup mount;
In Data Guard 10g, the “startup” will put the Standby into read-only mode
SQL> startup;
Implementation of Physical Standby
10. Enable managed recovery mode on Standby
SQL> alter database recover managed standby database disconnect;
Troubleshooting$ tail –f alert_BRDSTN.log
Almost all problems encountered were:– TNS set up incorrectly– Initialization parameters set wrong
Implementation of Physical Standby
Preventing User Errors
Logs copied but not applied for 60 minutes
Used to have to manually script thisSQL> alter database recover managed standby
database delay 60 disconnect;
To disable delay:SQL> alter database recover managed standby
database nodelay;
Use of Read-Only Standby
7x24 business requirement for knowledge reporting
Primary database batch loaded once a day
How do we ensure that there will always be a database available?
– Create two (or more) Standby databases– Shut down one at a time, apply redo
Use of Read-Only Standby
.
PrimaryDatabase
Primary DatabaseProduction Site
ARCn
Two Separate Read-OnlyStandby Database Servers
DailyBatchLoad
Standby 2brdstn
OracleNet
Standby 1brdstn
Reports
l3srv1
l3srv2
Use of Read-Only Standby
Let Oracle Net connection figure out which read-only physical Standby database available
brdstn=
(DESCRIPTION =
(LOAD_BALANCE=on) (ADDRESS=(PROTOCOL=tcp)(HOST=l3srv1)(PORT=1521))
(ADDRESS=(PROTOCOL=tcp)(HOST=l3srv2)(PORT=1521))
(CONNECT_DATA=(SERVICE_NAME=brdstn))
)
Disaster Happens…
Haven’t had a “complete disaster”… yet We have had bad hardware cause failovers We were able to easily failover to Standby
SQL> alter database activate standby database;
In Data Guard 9i, we keep 9i Primary init.ora on Standby
In Data Guard 10g, VALID_FOR eliminates this need
Archive Gap Management
This is one of our favorite Data Guard 9i features
Addresses critical issues such as:– What if network or server is down?– After failure resolution, how is the standby caught up?
In Oracle8i Standby Database, we would manually fix
In Oracle9i:– Data Guard has automatic methods for gap resolution– Fetch Archive Log (FAL) processes– In our experience, very reliable
Propagation of Datafile Operations
Another task automated in Data Guard 9i
In Oracle8i Standby Database, add/drop tablespace/datafile commands not automatically propagated
– DBA had to intervene
In Oracle9i Data Guard– Fully automated– In Standby initialization file:
standby_file_management = auto
Propagation of Datafile Operations
Example:
SQL> drop tablespace HRM_SALA including contents and datafiles;
On standby the tablespace HRM_SALA will be automatically dropped and all datafiles will be deleted from disk
Note: If you rename a datafile, DBA must intervene
Oracle Data Guard 10g Beta Feedback
Logical Standby easier to setup Simplified SQL syntax More helpful, feature-rich initialization
parameters
Agenda
Oracle Data Guard – a Quick Introduction Data Guard & Features in Oracle Database 10g Customer Success Story – Sun Microsystems Summary & Q/A
Maximum Availability Architecture
Best Practices on: General Data Guard configuration Redo data transport mechanisms Protection modes Switchover/Failover Media recovery SQL Apply configuration Network configuration Integration with other HA technologies
White papers1: MAA – detailed Media Recovery Site/Network configuration Fast-Start Checkpointing SQL Apply Best Practices Role Management
1. Ref. http://otn.oracle.com/deploy/availability/htdocs/maa.htm for latest updates
Data Guard Customers
Health Care
Financial/Insurance
e-Commerce
Other Industries
Manufacturing
Government
Utilities
Telecom
Transportation
Customer Testimonials
“Data Guard automates disaster-recovery procedures and reduces Fidelity's exposure to data loss by an order of magnitude compared to previous approaches.”
Jonathan Schapiro Vice President Data Architecture & Services Global Equity Trading & Technology
Customer Testimonials
“We needed to consider the safe-keeping of our data, but we also needed to look at cost. Oracle Data Guard provides everything for a high availability solution at a lower cost than other alternatives”
Ann Collins Technical Director
Customer Testimonials
“We don't have to baby-sit it – it just works!”
Darl Kuhn Senior DBA & Staff Engineer Database ServicesSun Services Global Engineering
Why Oracle Data Guard?1. Disaster Recovery & High Availability
– Easy failover/switchover between primary and standby databases
2. Complete data protection– Enables zero data loss, safeguard against data corruptions
3. Efficient utilization of system resources– Standby databases can be used for reporting, backups, queries
4. Balance data availability against performance– Flexible data protection/synchronization modes
6. Centralized and simple management– Push-button graphical interface for management and monitoring
5. Automatic resynchronization after restoration of network connectivity– Automatic archive gap detection and resolution with no manual intervention
Of Course …
Complete, out-of-the-box
integration with Oracle
database, at no extra
cost!
Resources
Maximum Availability Architecture white papers: http://otn.oracle.com/deploy/availability/htdocs/maa.htm
HA Portal on OTN: http://otn.oracle.com/deploy/availability
Data Guard home page on OTN: http://otn.oracle.com/deploy/availability/htdocs/odg_overview.html
Oracle Consulting Services: http://otn.oracle.com/consulting
Next StepsHigh Availability Sessions from Oracle
11:00 AM
How Oracle Database 10g Revolutionizes Availability and
Enables the Grid
3:30 PM
Oracle Recovery Manager (RMAN) 10g: Reloaded
5:00 PM
Proven Techniques for Maximizing Availability
8:30 AM
Oracle Database 10g - RMAN and ATA Storage in Action
11:00 AM
Oracle Data Guard: Maximum Data Protection at Minimum Cost
1:00 PM
Oracle Database 10g Time Navigation: Human-Error Correction
4:30 PM
Data Guard SQL Apply: Back to the Future
Wednesday in Moscone Room 304Tuesday in Moscone Room 304
For More Info On Oracle HA Go To http://otn.oracle.com/deploy/availability/
Next StepsHigh Availability Sessions from Oracle
8:30 AM in Moscone Room 304
Oracle Database 10g Data Warehouse Backup and Recovery:
Automatic, Simple, Reliable
8:30 AM in Moscone Room 104
Building RAC Clusters over InfiniBand
Thursday
For More Info On Oracle HA Go To http://otn.oracle.com/deploy/availability/
Real Application Clusters
Data Guard
Database Backup & Recovery
Flashback Recovery
LogMiner, Online Redefinition, and Cross Platform Transportable
Tablespaces
Database HA Demos All Four DaysIn The Oracle Demo Campground
Reminder – please complete the OracleWorld online session survey
Thank you.
AQ&Q U E S T I O N SQ U E S T I O N S
A N S W E R SA N S W E R S