Table of Contents
- Title and Copyright Information
- Preface
-
Part I Concepts and Administration
-
1
Introduction to Oracle Data Guard
- 1.1 Oracle Data Guard Configurations
- 1.2 Oracle Data Guard Services
- 1.3 Oracle Data Guard Broker
- 1.4 Oracle Data Guard Protection Modes
- 1.5 Client Failover
- 1.6 Oracle Data Guard and Complementary Technologies
- 1.7 Oracle Active Data Guard Supports Oracle Sharding
- 1.8 Summary of Oracle Data Guard Benefits
- 2 Getting Started with Oracle Data Guard
-
3
Creating a Physical Standby Database
- 3.1 About Creating a Physical Standby in a Multitenant Environment
- 3.2 Preparing the Primary Database for Standby Database Creation
-
3.3
Step-by-Step Instructions for Creating a Physical Standby Database
- 3.3.1 Creating a Physical Standby Task 1: Create a Backup Copy of the Primary Database Data Files
- 3.3.2 Creating a Physical Standby Task 2: Create a Control File for the Standby Database
- 3.3.3 Creating a Physical Standby Task 3: Create a Parameter File for the Standby Database
- 3.3.4 Creating a Physical Standby Task 4: Copy Files from the Primary System to the Standby System
- 3.3.5 Creating a Physical Standby Task 5: Set Up the Environment to Support the Standby Database
- 3.3.6 Creating a Physical Standby Task 6: Start the Physical Standby Database
- 3.3.7 Creating a Physical Standby Task 7: Verify the Physical Standby Database Is Performing Properly
- 3.4 Creating a Physical Standby: Post-Creation Steps
- 3.5 Using DBCA to Create a Data Guard Standby
- 3.6 Creating a PDB in a Primary Database
-
4
Creating a Logical Standby Database
- 4.1 About Creating a Logical Standby in a Multitenant Environment
- 4.2 Prerequisite Conditions for Creating a Logical Standby Database
-
4.3
Step-by-Step Instructions for Creating a Logical Standby Database
- 4.3.1 Creating a Logical Standby Task 1: Create a Physical Standby Database
- 4.3.2 Creating a Logical Standby Task 2: Stop Redo Apply on the Physical Standby Database
- 4.3.3 Creating a Logical Standby Task 3: Prepare the Primary Database to Support a Logical Standby Database
- 4.3.4 Creating a Logical Standby Task 4: Transition to a Logical Standby Database
- 4.3.5 Creating a Logical Standby Task 5: Open the Logical Standby Database
- 4.3.6 Creating a Logical Standby Task 6: Verify the Logical Standby Database Is Performing Properly
- 4.4 Creating a Logical Standby: Post-Creation Steps
- 5 Using Far Sync Instances
- 6 Oracle Data Guard Protection Modes
-
7
Redo Transport Services
- 7.1 Introduction to Redo Transport Services
- 7.2 Configuring Redo Transport Services
- 7.3 Cascaded Redo Transport Destinations
- 7.4 Data Protection Considerations for Cascading Standbys
- 7.5 Validating a Configuration
- 7.6 Monitoring Redo Transport Services
- 7.7 Tuning Redo Transport
- 8 Apply Services
- 9 Role Transitions
-
10
Managing Physical and Snapshot Standby Databases
- 10.1 Starting Up and Shutting Down a Physical Standby Database
-
10.2
Opening a Physical Standby Database
-
10.2.1
Real-time Query
- 10.2.1.1 Monitoring Apply Lag in a Real-time Query Environment
- 10.2.1.2 Configuring Apply Lag Tolerance in a Real-time Query Environment
- 10.2.1.3 Forcing Redo Apply Synchronization in a Real-time Query Environment
- 10.2.1.4 Real-time Query Restrictions
- 10.2.1.5 Automatic Block Media Recovery
- 10.2.1.6 Manual Block Media Recovery
- 10.2.1.7 Tuning Queries on a Physical Standby Database
- 10.2.1.8 Adding Temp Files to a Physical Standby
- 10.2.2 Using SQL and PL/SQL on Active Data Guard Standbys
- 10.2.3 Using Temporary Tables on Active Data Guard Instances
- 10.2.4 IM Column Store in an Active Data Guard Environment
- 10.2.5 In-Memory External Tables in an Active Data Guard Environment
- 10.2.6 Using Sequences in Oracle Active Data Guard
- 10.2.7 Using the Result Cache on Physical Standby Databases
-
10.2.1
Real-time Query
-
10.3
Primary Database Changes That Require Manual Intervention at a Physical Standby
- 10.3.1 Adding a Data File or Creating a Tablespace
- 10.3.2 Dropping Tablespaces and Deleting Data Files
- 10.3.3 Using Transportable Tablespaces with a Physical Standby Database
- 10.3.4 Renaming a Data File in the Primary Database
- 10.3.5 Add or Drop a Redo Log File Group
- 10.3.6 NOLOGGING or Unrecoverable Operations
- 10.3.7 Refresh the Password File
- 10.3.8 Reset the TDE Master Encryption Key
- 10.4 Recovering Through the OPEN RESETLOGS Statement
- 10.5 Automatic Flashback of a Mounted Standby After a Primary RESETLOGS Operation
- 10.6 Monitoring Primary, Physical Standby, and Snapshot Standby Databases
- 10.7 Replicating Restore Points from Primary to Standby
- 10.8 Tuning Redo Apply
- 10.9 Tuning Databases in an Active Data Guard Environment with SQL Tuning Advisor
- 10.10 Using Oracle Diagnostic Pack to Tune Oracle Active Data Guard Standbys
- 10.11 Managing a Snapshot Standby Database
-
11
Managing a Logical Standby Database
- 11.1 Overview of the SQL Apply Architecture
- 11.2 Controlling User Access to Tables in a Logical Standby Database
- 11.3 Views Related to Managing and Monitoring a Logical Standby Database
- 11.4 Monitoring a Logical Standby Database
-
11.5
Customizing a Logical Standby Database
- 11.5.1 Customizing Logging of Events in the DBA_LOGSTDBY_EVENTS View
- 11.5.2 Using DBMS_LOGSTDBY.SKIP to Prevent Changes to Specific Schema Objects
- 11.5.3 Setting up a Skip Handler for a DDL Statement
- 11.5.4 Modifying a Logical Standby Database
- 11.5.5 Adding or Re-Creating Tables On a Logical Standby Database
-
11.6
Managing Specific Workloads In the Context of a Logical Standby Database
- 11.6.1 Importing a Transportable Tablespace to the Primary Database
- 11.6.2 Using Materialized Views
- 11.6.3 How Triggers and Constraints Are Handled on a Logical Standby Database
- 11.6.4 Using Triggers to Replicate Unsupported Tables
- 11.6.5 Recovering Through the Point-in-Time Recovery Performed at the Primary
- 11.6.6 Running an Oracle Streams Capture Process on a Logical Standby Database
- 11.7 Tuning a Logical Standby Database
- 11.8 Backup and Recovery in the Context of a Logical Standby Database
-
12
Using RMAN to Back Up and Restore Files
- 12.1 About RMAN File Management in an Oracle Data Guard Configuration
- 12.2 About RMAN Configuration in an Oracle Data Guard Environment
- 12.3 About RMAN Support for Oracle Data Guard In a Multitenant Environment
- 12.4 Recommended RMAN and Oracle Database Configurations
- 12.5 Backup Procedures
- 12.6 Registering and Unregistering Databases in an Oracle Data Guard Environment
- 12.7 Reporting in an Oracle Data Guard Environment
- 12.8 Performing Backup Maintenance in an Oracle Data Guard Environment
- 12.9 Recovery Scenarios in an Oracle Data Guard Environment
- 12.10 Additional Backup Situations
- 12.11 Restoring and Recovering Files Over the Network
- 12.12 Rolling Forward a Standby With One Command
-
13
Using SQL Apply to Upgrade the Oracle Database
- 13.1 Benefits of a Rolling Upgrade Using SQL Apply
- 13.2 Requirements to Perform a Rolling Upgrade Using SQL Apply
- 13.3 Figures and Conventions Used in the Upgrade Instructions
- 13.4 Performing a Rolling Upgrade By Creating a New Logical Standby Database
- 13.5 Performing a Rolling Upgrade With an Existing Logical Standby Database
- 13.6 Performing a Rolling Upgrade With an Existing Physical Standby Database
-
14
Using DBMS_ROLLING to Perform a Rolling Upgrade
- 14.1 Concepts New to Rolling Upgrades
- 14.2 Overview of Using DBMS_ROLLING
- 14.3 Planning a Rolling Upgrade
- 14.4 Performing a Rolling Upgrade
- 14.5 Monitoring a Rolling Upgrade
- 14.6 Rolling Back a Rolling Upgrade
- 14.7 Handling Role Changes That Occur During a Rolling Upgrade
- 14.8 Examples of Rolling Upgrades
-
15
Oracle Data Guard Scenarios
- 15.1 Configuring Logical Standby Databases After a Failover
- 15.2 Converting a Failed Primary Into a Standby Database Using Flashback Database
- 15.3 Using Flashback Database After Issuing an Open Resetlogs Statement
- 15.4 Recovering After the NOLOGGING Clause Is Specified
- 15.5 Creating a Standby Database That Uses OMF or Oracle ASM
- 15.6 Recovering From Lost-Write Errors on a Primary Database
- 15.7 Using the DBCOMP Procedure to Detect Lost Writes and Other Inconsistencies
- 15.8 Converting a Failed Primary into a Standby Database Using RMAN Backups
- 15.9 Changing the Character Set of a Primary Without Re-Creating Physical Standbys
- 15.10 Actions Needed On a Standby After a PDB PITR or PDB Flashback On a Primary
- 15.11 Recovery After PDB PITR or PDB Flashback in an Active Data Guard Environment
-
1
Introduction to Oracle Data Guard
- Part II Reference
-
Appendixes
-
A
Troubleshooting Oracle Data Guard
- A.1 Common Problems
- A.2 Log File Destination Failures
- A.3 Handling Logical Standby Database Failures
- A.4 Problems Switching Over to a Physical Standby Database
- A.5 Problems Switching Over to a Logical Standby Database
- A.6 What to Do If SQL Apply Stops
- A.7 Network Tuning for Redo Data Transmission
- A.8 Slow Disk Performance on Standby Databases
- A.9 Log Files Must Match to Avoid Primary Database Shutdown
- A.10 Troubleshooting a Logical Standby Database
-
B
Patching, Upgrading, and Downgrading Databases in an Oracle Data Guard Configuration
- B.1 Before You Patch or Upgrade the Oracle Database Software
- B.2 Patching Oracle Database with Standby First Patching
- B.3 Upgrading Oracle Database with a Physical Standby Database in Place
- B.4 Upgrading Oracle Database with a Logical Standby Database in Place
- B.5 Modifying the COMPATIBLE Initialization Parameter After Upgrading
- B.6 Downgrading Oracle Database with No Logical Standby in Place
- B.7 Downgrading Oracle Database with a Logical Standby in Place
-
C
Data Type and DDL Support on a Logical Standby Database
- C.1 Datatype Considerations
- C.2 Support for Data Types That Lack Native Redo-Based Support
- C.3 Support for Transparent Data Encryption (TDE)
- C.4 Support for Tablespace Encryption
- C.5 Support For Row-level Security and Fine-Grained Auditing
- C.6 Oracle Label Security
- C.7 Oracle Database Vault
- C.8 Oracle E-Business Suite
- C.9 Supported Table Storage Types
- C.10 Unsupported Table Storage Types
- C.11 PL/SQL Supplied Packages Considerations
- C.12 Unsupported Tables
- C.13 Skipped SQL Statements on a Logical Standby Database
- C.14 DDL Statements Supported by a Logical Standby Database
- C.15 Distributed Transactions and XA Support
- C.16 Support for SecureFiles LOBs
- C.17 Support for Database File System (DBFS)
- C.18 Character Set Considerations
- C.19 Additional PL/SQL Package Support Available Only in the Context of DBMS_ROLLING Upgrades
- D Oracle Data Guard and Oracle Real Application Clusters
- E Creating a Standby Database with Recovery Manager
- F Setting Archive Tracing
- G Performing Role Transitions Using Old Syntax
- H Using the ALTERNATE Attribute to Configure Remote Alternate Destinations
-
A
Troubleshooting Oracle Data Guard
- Index