0% found this document useful (0 votes)
8 views2 pages

Oracle DataGuard and Broker Guide

Uploaded by

kaleem.prodba
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
8 views2 pages

Oracle DataGuard and Broker Guide

Uploaded by

kaleem.prodba
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

Oracle Data Guard and Data Guard Broker - Practical DBA

Guide

1. Overview
Oracle Data Guard ensures high availability, data protection, and disaster recovery. It maintains
synchronized standby copies of a production database.

2. Core Components
Primary Database (source), Standby Database (replica), Redo Transport (transfer redo), Apply
Services (apply redo), and Role Transitions (Switchover/Failover).

3. Types of Standby Databases


• Physical Standby - Block-for-block copy using MRP (Redo Apply)
• Logical Standby - SQL statements applied via LSP (SQL Apply)
• Snapshot Standby - Read-write mode for testing

4. Protection Modes
• Maximum Protection - Zero data loss, synchronous commit
• Maximum Availability - Zero loss if standby available
• Maximum Performance - Best speed, minimal data loss

5. Redo Transport Methods


• LGWR SYNC AFFIRM - Synchronous redo transfer
• LGWR ASYNC NOAFFIRM - Asynchronous redo transfer
• ARCH - Archive process-based redo shipping

6. Real-Time Apply
Applies redo as received, improving RPO. Example: ALTER DATABASE RECOVER MANAGED
STANDBY DATABASE USING CURRENT LOGFILE DISCONNECT FROM SESSION;

7. Switchover and Failover


Switchover (Planned): ALTER DATABASE COMMIT TO SWITCHOVER TO STANDBY;
Failover (Unplanned): ALTER DATABASE ACTIVATE STANDBY DATABASE;

8. Manual Configuration
PRIMARY:
ALTER DATABASE FORCE LOGGING;
ALTER SYSTEM SET LOG_ARCHIVE_CONFIG='DG_CONFIG=(PRIM,STBY)';
ALTER DATABASE CREATE STANDBY CONTROLFILE AS '/backup/[Link]';

STANDBY:
STARTUP NOMOUNT;
ALTER DATABASE MOUNT STANDBY DATABASE;
ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT FROM
SESSION;

9. Monitoring Commands
SELECT OPEN_MODE, DATABASE_ROLE FROM V$DATABASE;
SELECT DEST_ID, STATUS, ERROR FROM V$ARCHIVE_DEST_STATUS;
SELECT NAME, VALUE FROM V$DATAGUARD_STATS;

10. Data Guard Broker (DGMGRL)


Broker automates configuration and management. CLI: dgmgrl

11. DGMGRL Setup


ALTER SYSTEM SET DG_BROKER_START=TRUE;
CREATE CONFIGURATION 'DGConfig' AS PRIMARY DATABASE IS 'PRIM' CONNECT
IDENTIFIER IS PRIM;
ADD DATABASE 'STBY' AS CONNECT IDENTIFIER IS STBY MAINTAINED AS PHYSICAL;
ENABLE CONFIGURATION;

12. Role Transitions (Broker)


SWITCHOVER TO 'STBY';
FAILOVER TO 'STBY';
REINSTATE DATABASE 'PRIM';

13. Monitoring Views


V$DATAGUARD_CONFIG - Configuration details
V$DATAGUARD_STATS - Lag info
V$MANAGED_STANDBY - MRP/LSP status

14. Troubleshooting
Primary: SELECT ERROR FROM V$ARCHIVE_DEST_STATUS;
Standby: ALTER DATABASE RECOVER MANAGED STANDBY DATABASE CANCEL;
ALTER DATABASE RECOVER MANAGED STANDBY DATABASE USING CURRENT LOGFILE
DISCONNECT;

15. Real-Time Scenario - Resync Out-of-Sync Standby


1. Identify missing archives: SELECT SEQUENCE#, APPLIED FROM V$ARCHIVED_LOG;
2. Copy missing logs: scp /arch/1_20500_*.arc oracle@stby:/arch/
3. Register logs: ALTER DATABASE REGISTER LOGFILE '/arch/1_20500_*.arc';
4. Resume recovery: ALTER DATABASE RECOVER MANAGED STANDBY DATABASE
DISCONNECT;

16. Best Practices


• Use real-time apply
• Create standby redo logs (>= primary)
• Monitor lag
• Enable Flashback
• Use DGMGRL for automation

You might also like