Data Guard Broker PDF
Data Guard Broker PDF
Data Guard Broker PDF
Broker
18c
E83845-01
February 2018
Oracle Data Guard Broker, 18c
E83845-01
Copyright © 1999, 2018, Oracle and/or its affiliates. All rights reserved.
Contributors: Larry Carpenter, Laurence Clarke, Jeff Detjen, Mahesh Girkar, Nitin Karkhanis, Sadhana
Kyathappala, Chang Kyu Lee, Steve Lee, Jiangbin Luo, Bob McGuirk, Joe Meeks, Darryl Presley, Ashish
Ray, Lawrence To, Di Yang, Zaixian Xie
This software and related documentation are provided under a license agreement containing restrictions on
use and disclosure and are protected by intellectual property laws. Except as expressly permitted in your
license agreement or allowed by law, you may not use, copy, reproduce, translate, broadcast, modify,
license, transmit, distribute, exhibit, perform, publish, or display any part, in any form, or by any means.
Reverse engineering, disassembly, or decompilation of this software, unless required by law for
interoperability, is prohibited.
The information contained herein is subject to change without notice and is not warranted to be error-free. If
you find any errors, please report them to us in writing.
If this is software or related documentation that is delivered to the U.S. Government or anyone licensing it on
behalf of the U.S. Government, then the following notice is applicable:
U.S. GOVERNMENT END USERS: Oracle programs, including any operating system, integrated software,
any programs installed on the hardware, and/or documentation, delivered to U.S. Government end users are
"commercial computer software" pursuant to the applicable Federal Acquisition Regulation and agency-
specific supplemental regulations. As such, use, duplication, disclosure, modification, and adaptation of the
programs, including any operating system, integrated software, any programs installed on the hardware,
and/or documentation, shall be subject to license terms and license restrictions applicable to the programs.
No other rights are granted to the U.S. Government.
This software or hardware is developed for general use in a variety of information management applications.
It is not developed or intended for use in any inherently dangerous applications, including applications that
may create a risk of personal injury. If you use this software or hardware in dangerous applications, then you
shall be responsible to take all appropriate fail-safe, backup, redundancy, and other measures to ensure its
safe use. Oracle Corporation and its affiliates disclaim any liability for any damages caused by use of this
software or hardware in dangerous applications.
Oracle and Java are registered trademarks of Oracle and/or its affiliates. Other names may be trademarks of
their respective owners.
Intel and Intel Xeon are trademarks or registered trademarks of Intel Corporation. All SPARC trademarks are
used under license and are trademarks or registered trademarks of SPARC International, Inc. AMD, Opteron,
the AMD logo, and the AMD Opteron logo are trademarks or registered trademarks of Advanced Micro
Devices. UNIX is a registered trademark of The Open Group.
This software or hardware and documentation may provide access to or information about content, products,
and services from third parties. Oracle Corporation and its affiliates are not responsible for and expressly
disclaim all warranties of any kind with respect to third-party content, products, and services unless otherwise
set forth in an applicable agreement between you and Oracle. Oracle Corporation and its affiliates will not be
responsible for any loss, costs, or damages incurred due to your access to or use of third-party content,
products, or services, except as set forth in an applicable agreement between you and Oracle.
Contents
Preface
Audience xvii
Documentation Accessibility xvii
Related Documents xvii
Conventions xvii
iii
3 Managing Broker Configurations
3.1 Configuration Support 3-1
3.2 Configuration Properties 3-3
3.3 Setting Up the Broker Configuration Files 3-4
3.3.1 Renaming the Broker Configuration Files 3-4
3.3.2 Managing Broker Configuration Files in an Oracle RAC Environment 3-5
3.3.2.1 Using Cluster File System (CFS) for Configuration Files 3-6
3.3.2.2 Using Oracle ASM Disk Groups for Configuration Files 3-6
3.4 Starting the Data Guard Broker 3-7
3.5 Management Cycle of a Broker Configuration 3-8
3.6 Enable and Disable Operations 3-11
3.7 Configuration Status 3-12
iv
4.6.7 Apply Lag 4-24
4.7 Managing Data Protection Modes 4-25
4.7.1 Setting the Protection Mode for Your Configuration 4-25
4.7.1.1 Setting the Protection Mode Task 1: Determine Which Data
Protection Mode You Want to Use 4-25
4.7.1.2 Setting the Protection Mode Task 2: Set up standby redo log files 4-27
4.7.1.3 Setting the Protection Mode Task 3: Set the redo transport mode 4-27
4.7.1.4 Setting the Protection Mode Task 4: Using DGMGRL or Cloud
Control 4-28
4.7.2 How the Protection Modes Influence Broker Operations 4-28
4.7.2.1 Upgrading or Downgrading the Current Protection Mode 4-29
4.7.2.2 Switchover Operations 4-29
4.7.2.3 Failover Operations 4-30
4.7.2.4 Disable and Enable Operations 4-30
4.7.2.5 Requirements For Removing a Database from the Configuration 4-31
4.7.2.6 Requirements On Other Operations 4-31
4.8 Managing Far Sync Instances 4-32
4.9 Managing Fast-Start Failover 4-33
4.9.1 Configure Properties to Tune Fast-Start Failover 4-34
4.9.2 Configure Conditions for Fast-start Failover 4-35
4.9.3 Application Initiated Fast-Start Failover 4-36
4.10 Managing Database Conversions 4-36
4.11 Database Status 4-37
4.11.1 Querying Database Status 4-38
4.11.2 Validating a Database Before a Role Change 4-39
4.11.3 Validating the Server Parameter Files Before a Role Change 4-40
4.11.4 Validating the Network Configuration Before a Role Change 4-40
4.11.5 Validating the Static Connect Identifier Before a Role Change 4-40
v
5.4.2.1 Performing a Manual Failover Task 1: Determine Which of the
Available Standby Databases is the Best Target for the Failover 5-10
5.4.2.2 Performing a Manual Failover Task 2: Start the Failover 5-10
5.4.2.3 Performing a Manual Failover Task 3: Reset the Protection Mode 5-11
5.4.2.4 Performing a Manual Failover Task 4: Re-establish a Disaster-
Recovery Configuration 5-11
5.4.2.5 How the Broker Performs a Complete Failover Operation 5-12
5.4.2.6 How the Broker Performs an Immediate Failover Operation 5-13
5.4.3 Reenabling Disabled Databases After a Role Change 5-14
5.4.3.1 How to Reinstate a Database 5-15
5.4.3.2 How to Re-create and Reenable a Disabled Database 5-16
5.5 Fast-Start Failover 5-16
5.5.1 Prerequisites for Enabling Fast-Start Failover 5-19
5.5.2 Enabling Fast-Start Failover 5-20
5.5.2.1 Enabling Fast-Start Failover Task 1: Determine Which Available
Standby Databases Should Be Targets for the Failover 5-21
5.5.2.2 Enabling Fast-Start Failover Task 2: Specify Target Standby
Databases with the FastStartFailoverTarget Configuration
Property 5-21
5.5.2.3 Enabling Fast-Start Failover Task 3: Determine the Protection
Mode You Want 5-21
5.5.2.4 Enabling Fast-Start Failover Task 4: Set the
FastStartFailoverThreshold Configuration Property 5-22
5.5.2.5 Enabling Fast-Start Failover Task 5: Set Other Properties Related
to Fast-Start Failover (Optional) 5-23
5.5.2.6 Enabling Fast-Start Failover Task 6: Enable Additional Fast-Start
Failover Conditions (Optional) 5-25
5.5.2.7 Enabling Fast-Start Failover Task 7: Using DGMGRL or Cloud
Control 5-25
5.5.2.8 Enabling Fast-Start Failover Task 8: Start the Observer 5-26
5.5.2.9 Enabling Fast-Start Failover Task 9: Verify the Fast-Start Failover
Environment 5-27
5.5.2.10 When Fast-Start Failover Is Enabled and the Observer Is
Running 5-28
5.5.2.11 Restrictions When Fast-Start Failover is Enabled 5-30
5.5.2.12 Shutting Down the Primary Database When Fast-Start Failover
Is Enabled 5-31
5.5.2.13 Performing Manual Role Changes When Fast-Start Failover Is
Enabled 5-31
5.5.3 Directing a Fast-Start Failover From an Application 5-32
5.5.4 Viewing Fast-Start Failover Configuration Statistics and Status 5-33
5.5.4.1 V$DATABASE View 5-35
5.5.4.2 V$FS_FAILOVER_STATS View 5-37
5.5.5 Disabling Fast-Start Failover 5-37
5.5.6 Performance Considerations for Fast-Start Failover 5-40
vi
5.5.7 Managing the Observer 5-41
5.5.7.1 Installing and Starting the Observer 5-42
5.5.7.2 Viewing Information About the Master Observer 5-44
5.5.7.3 Viewing Information About All Observers 5-45
5.5.7.4 What Happens if the Master Observer Fails? 5-46
5.5.7.5 Managing Observer's Connection to the Primary 5-47
5.5.7.6 Stopping the Observer 5-47
5.5.7.7 Moving the Observer to Another Computer 5-49
5.5.7.8 How the Observer Maintains Fast-Start Failover Configuration
Information 5-49
5.5.7.9 Managing Observers for Multiple Configurations 5-49
5.5.7.10 Patching an Environment When the Observer Is Running and
Fast-start Failover Is Enabled 5-53
5.5.8 Reinstating the Former Primary Database in the Broker Configuration 5-53
5.5.8.1 Requirements 5-54
5.5.8.2 Restrictions on Reinstatement 5-54
5.5.8.3 How the Broker Handles a Failed Reinstatement 5-55
5.5.9 Shutting Down Databases In a Fast-Start Failover Environment 5-55
5.6 Database Client Considerations 5-55
5.6.1 Oracle Data Guard Specific FAN and FCF Configuration Requirements 5-56
5.6.1.1 Oracle Net Configuration Requirements 5-56
5.6.1.2 Database Service Configuration Requirements 5-57
5.6.1.3 ONS Configuration Requirements 5-60
5.6.1.4 Application Continuity 5-60
vii
6.8 Scenario 7: Enabling Fast-Start Failover When a Far Sync Instance Is In Use 6-15
6.9 Scenario 8: Performing Routine Management Tasks 6-15
6.9.1 Changing Properties and States 6-15
6.9.1.1 Alter a Database Property 6-15
6.9.1.2 Reset a Property to Its Default Value 6-16
6.9.1.3 Alter the State of a Standby Database 6-16
6.9.1.4 Alter the State of a Primary Database 6-16
6.9.2 Disabling the Configuration and Databases 6-16
6.9.2.1 Disable a Configuration 6-17
6.9.2.2 Disable a Standby Database 6-17
6.9.2.3 Disabling a Far Sync Instance 6-18
6.9.3 Removing the Configuration, a Standby Database, or a Far Sync
Instance 6-19
6.9.3.1 Removing a Standby Database from the Configuration 6-19
6.9.3.2 Removing a Far Sync Instance from the Configuration 6-20
6.9.3.3 Removing a Broker Configuration 6-21
6.10 Scenario 9: Performing a Switchover Operation 6-21
6.10.1 Using the SWITCHOVER Command Task 1: Check the Primary
Database 6-22
6.10.2 Using the SWITCHOVER Command Task 2: Check the Standby
Database That is the Target of the Switchover 6-23
6.10.3 Using the SWITCHOVER Command Task 3: Confirm That the
Database Is Ready for a Role Change 6-24
6.10.4 Using the SWITCHOVER Command Task 4: Issue the Switchover
Command 6-25
6.10.5 Using the SWITCHOVER Command Task 5: Show the Configuration 6-25
6.11 Scenario 10: Performing a Manual Failover Operation 6-26
6.12 Scenario 11: Reinstating a Failed Primary Database 6-28
6.13 Scenario 12: Converting a Physical Standby to a Snapshot Standby 6-29
6.14 Scenario 13: Monitoring a Data Guard Configuration 6-30
6.14.1 Monitoring a Configuration Task 1: Check the Configuration Status 6-30
6.14.2 Monitoring a Configuration Task 2: Check the Database Status 6-31
6.14.3 Monitoring a Configuration Task 3: Check the LogXptStatus
Monitorable Property 6-31
6.14.4 Monitoring a Configuration Task 4: Check the InconsistentProperties
Monitorable Property 6-32
6.14.5 Monitoring a Configuration Task 5: Check the
InconsistentLogXptProps Monitorable Property 6-32
6.15 Scenario 14: Adding a Recovery Appliance to a Broker Configuration 6-33
viii
7.1.1 DGMGRL Optional Parameters 7-1
7.1.2 DGMGRL Command Format and Parameters 7-3
7.1.3 DGMGRL Command Usage Notes 7-6
7.2 Exiting the Data Guard Command-Line Interface 7-8
7.3 @ (at sign) Command 7-8
7.4 / (slash) Command 7-9
7.5 ADD DATABASE 7-10
7.6 ADD FAR_SYNC 7-11
7.7 ADD RECOVERY_APPLIANCE 7-11
7.8 CONNECT 7-12
7.9 CONVERT DATABASE 7-14
7.10 CREATE CONFIGURATION 7-15
7.11 DISABLE CONFIGURATION 7-17
7.12 DISABLE DATABASE 7-17
7.13 DISABLE FAR_SYNC 7-18
7.14 DISABLE FAST_START FAILOVER 7-18
7.15 DISABLE FAST_START FAILOVER CONDITION 7-19
7.16 DISABLE RECOVERY_APPLIANCE 7-20
7.17 EDIT CONFIGURATION (Property) 7-20
7.18 EDIT CONFIGURATION (Protection Mode) 7-21
7.19 EDIT CONFIGURATION (RENAME) 7-23
7.20 EDIT CONFIGURATION RESET (Property) 7-24
7.21 EDIT DATABASE (Property) 7-24
7.22 EDIT DATABASE (Rename) 7-26
7.23 EDIT DATABASE (State) 7-26
7.24 EDIT DATABASE RESET (Property) 7-27
7.25 EDIT FAR_SYNC 7-28
7.26 EDIT FAR_SYNC RESET (Property) 7-28
7.27 EDIT INSTANCE (AUTO PFILE) 7-29
7.28 EDIT INSTANCE (Property) 7-30
7.29 EDIT INSTANCE RESET (Property) 7-31
7.30 EDIT RECOVERY_APPLIANCE (Property) 7-33
7.31 EDIT RECOVERY_APPLIANCE (Rename) 7-34
7.32 EDIT RECOVERY_APPLIANCE RESET (Property) 7-34
7.33 ENABLE CONFIGURATION 7-35
7.34 ENABLE DATABASE 7-36
7.35 ENABLE FAR_SYNC 7-37
7.36 ENABLE FAST_START FAILOVER 7-37
7.37 ENABLE FAST_START FAILOVER CONDITION 7-39
7.38 ENABLE RECOVERY_APPLIANCE 7-40
7.39 EXIT 7-41
ix
7.40 FAILOVER 7-41
7.41 HELP 7-44
7.42 HOST or ! (exclamation point) 7-45
7.43 MIGRATE PLUGGABLE DATABASE 7-46
7.44 QUIT 7-49
7.45 REINSTATE DATABASE 7-49
7.46 REMOVE CONFIGURATION 7-50
7.47 REMOVE DATABASE 7-51
7.48 REMOVE FAR_SYNC 7-52
7.49 REMOVE INSTANCE 7-53
7.50 REMOVE RECOVERY_APPLIANCE 7-54
7.51 SET ECHO 7-55
7.52 SET MASTEROBSERVER TO 7-55
7.53 SET MASTEROBSERVERHOSTS 7-56
7.54 SET ObserverConfigFile 7-57
7.55 SET TIME 7-57
7.56 SHOW ALL 7-58
7.57 SHOW CONFIGURATION 7-58
7.58 SHOW CONFIGURATION WHEN PRIMARY IS 7-61
7.59 SHOW DATABASE 7-62
7.60 SHOW FAR_SYNC 7-65
7.61 SHOW FAST_START FAILOVER 7-67
7.62 SHOW INSTANCE 7-68
7.63 SHOW OBSERVER 7-70
7.64 SHOW ObserverConfigFile 7-71
7.65 SHOW OBSERVERS 7-72
7.66 SHOW RECOVERY_APPLIANCE 7-73
7.67 SHUTDOWN 7-74
7.68 SPOOL 7-75
7.69 SQL 7-76
7.70 START OBSERVER 7-77
7.71 START OBSERVER IN BACKGROUND 7-79
7.72 START OBSERVING 7-81
7.73 STARTUP 7-81
7.74 STOP OBSERVER 7-83
7.75 STOP OBSERVING 7-84
7.76 SWITCHOVER 7-85
7.77 VALIDATE DATABASE 7-88
7.78 VALIDATE DATABASE DATAFILE 7-93
7.79 VALIDATE DATABASE SPFILE 7-95
7.80 VALIDATE FAR_SYNC 7-96
x
7.81 VALIDATE NETWORK CONFIGURATION 7-98
7.82 VALIDATE STATIC CONNECT IDENTIFIER 7-99
xi
8.3.11 Encryption 8-31
8.3.12 FastStartFailoverTarget 8-31
8.3.13 InstanceName 8-32
8.3.14 LogArchiveFormat 8-33
8.3.15 LogArchiveMaxProcesses 8-34
8.3.16 LogArchiveMinSucceedDest 8-34
8.3.17 LogArchiveTrace 8-35
8.3.18 LogFileNameConvert 8-36
8.3.19 LogShipping 8-37
8.3.20 LogXptMode 8-37
8.3.21 LsbyMaxEventsRecorded 8-39
8.3.22 LsbyMaxServers 8-39
8.3.23 LsbyMaxSga 8-40
8.3.24 LsbyPreserveCommitOrder 8-40
8.3.25 LsbyRecordAppliedDdl 8-41
8.3.26 LsbyRecordSkipDdl 8-41
8.3.27 LsbyRecordSkipErrors 8-42
8.3.28 MaxConnections 8-42
8.3.29 MaxFailure 8-43
8.3.30 NetTimeout 8-44
8.3.31 ObserverConnectIdentifier 8-44
8.3.32 OnlineAlternateLocation 8-45
8.3.33 OnlineArchiveLocation 8-46
8.3.34 PreferredApplyInstance 8-46
8.3.35 PreferredObserverHosts 8-47
8.3.36 RedoCompression 8-48
8.3.37 RedoRoutes 8-49
8.3.37.1 Redo Routing Rules 8-49
8.3.38 ReopenSecs 8-52
8.3.39 StandbyAlternateLocation 8-53
8.3.40 StandbyArchiveLocation 8-53
8.3.41 StandbyFileManagement 8-54
8.3.42 StaticConnectIdentifier 8-55
8.3.43 TransportDisconnectedThreshold 8-56
8.3.44 TransportLagThreshold 8-56
xii
9.2.2 Redo Accumulating on the Primary Is Not Sent to Some Standby
Databases 9-2
9.2.3 Many Log Files Are Received on a Standby Database But Not Applied 9-3
9.2.4 The Request Timed Out or Cloud Control Performance Is Sluggish 9-4
9.2.5 The Primary Database is Flashed Back 9-4
9.2.6 Standby Fails to Automatically Start Up Due to Unknown Service
(ORA-12514) 9-5
9.3 Troubleshooting Problems During a Switchover Operation 9-5
9.4 Troubleshooting Problems During a Failover Operation 9-6
9.4.1 Failed Failovers to Physical Standby Databases 9-6
9.4.1.1 Failed Broker Complete Physical Failovers 9-6
9.4.1.2 Failed Broker Immediate Physical Failovers 9-6
9.4.2 Failed Failovers to Logical Standby Databases 9-7
9.5 Troubleshooting Problems with the Observer 9-7
9.5.1 Problems Starting the Observer 9-7
9.5.2 Problems Because the Observer Has Stopped 9-8
9.5.3 Capturing Observer Actions in the Observer Log File 9-9
Glossary
Index
xiii
List of Examples
4-1 Using the SHOW DATABASE VERBOSE Command to Display Properties 4-6
4-2 Using the RedoRoutes Property for Real-Time Cascading 4-11
4-3 Using the RedoRoutes Property for Remote Alternate Destinations 4-12
4-4 Turn Off Redo Transport Services to All Standby Databases 4-14
4-5 Turn Off Redo Transport Services to a Specific Standby Database 4-14
4-6 Setting Up Redo Transport From a Physical Standby To a Recovery Appliance 4-17
5-1 Sample Observer Configuration File 5-52
6-1 Connecting to the Primary Database on the Local System 6-3
6-2 Connecting to the Primary Database on a Remote System 6-3
7-1 Connecting to a Database Instance on a Local System 7-7
7-2 Connecting to a Database Instance on a Remote System 7-7
7-3 Connecting Using the AS Option 7-8
xiv
List of Figures
1-1 Oracle Data Guard Broker 1-8
1-2 Databases With Broker (DMON) Processes 1-11
3-1 Oracle Data Guard Broker Configuration 3-3
3-2 Broker Configuration Setup in a CFS Area 3-6
3-3 Broker Configuration Setup with Oracle ASM 3-7
3-4 Life Cycle of a Broker Configuration and Its Databases 3-8
5-1 Relationship of Primary and Standby Databases and the Observer 5-19
5-2 The Observer in the Fast-Start Failover Environment 5-41
xv
List of Tables
1-1 Configuration Management With and Without the Broker 1-2
4-1 Database States and Descriptions 4-2
4-2 Oracle Data Guard Protection Modes and Requirements 4-27
5-1 FS_FAILOVER_STATUS Column of the V$DATABASE View 5-35
5-2 FS_FAILOVER_OBSERVER_PRESENT Column of the V$DATABASE View 5-45
7-1 Summary of DGMGRL Commands 7-3
7-2 Examples of Health Conditions 7-39
8-1 Configurable Properties 8-21
xvi
Preface
This document provides information about Oracle Data Guard broker, a management
and monitoring interface that helps you configure, monitor, and control an Oracle Data
Guard broker configuration.
Audience
Oracle Data Guard Broker is intended for database administrators (DBAs) and system
administrators who want to use the Oracle Data Guard broker to automate many of the
tasks involved in configuring and monitoring an Oracle Data Guard configuration.
The information presented in this book assumes that you are already familiar with
Oracle Data Guard, Oracle Enterprise Manager Cloud Control (Cloud Control), Oracle
Real Application Clusters (Oracle RAC), and the network services provided by Oracle
Net Services.
Documentation Accessibility
For information about Oracle's commitment to accessibility, visit the Oracle
Accessibility Program website at http://www.oracle.com/pls/topic/lookup?
ctx=acc&id=docacc.
Related Documents
Refer to the following documentation for more information about Oracle Data Guard:
• Oracle Data Guard Concepts and Administration.
• Oracle release notes specific to your operating system.
• Oracle installation guide specific to your operating system.
• For more information about managing Oracle Data Guard through the Cloud
Control graphical user interface (GUI), see the Cloud Control online Help.
Conventions
The following text conventions are used in this document:
xvii
Preface
Convention Meaning
boldface Boldface type indicates graphical user interface elements associated
with an action, or terms defined in text or the glossary.
italic Italic type indicates book titles, emphasis, or placeholder variables for
which you supply particular values.
monospace Monospace type indicates commands within a paragraph, URLs, code
in examples, text that appears on the screen, or text that you enter.
xviii
Changes in This Release for Oracle Data
Guard Broker
This preface lists changes in Oracle Data Guard Broker.
xix
1
Oracle Data Guard Broker Concepts
Learn about Oracle Data Guard broker, its architecture and components, and how it
automates the creation, control, and monitoring of an Oracle Data Guard configuration.
• Overview of Oracle Data Guard and the Broker
• Benefits of Oracle Data Guard Broker
• Oracle Data Guard Broker Components
• Oracle Data Guard Broker User Interfaces
• Oracle Data Guard Monitor
See Oracle Data Guard Concepts and Administration for the definition of an Oracle
Data Guard configuration and for complete information about Oracle Data Guard
concepts and terminology.
1-1
Chapter 1
Overview of Oracle Data Guard and the Broker
Manager Cloud Control (Cloud Control) or the Oracle Data Guard command-line
interface.
1-2
Chapter 1
Overview of Oracle Data Guard and the Broker
Table 1-1 (Cont.) Configuration Management With and Without the Broker
1-3
Chapter 1
Overview of Oracle Data Guard and the Broker
See Also:
1.1.4 Oracle Data Guard Broker and Oracle Global Data Services
To manage broker configurations that support Oracle Global Data Services (GDS),
you use both the broker command-line interface, DGMGRL, and the GDS command
line interface,GDSCTL. Broker configurations are added to GDS pools (logical
groupings of GDS databases which span across GDS regions).
1-4
Chapter 1
Benefits of Oracle Data Guard Broker
The broker interacts with GDS and notifies it of any role or configuration changes to
ensure that the appropriate database services are active and that the appropriate FAN
events are published after a role change.
See Also:
Disaster protection:
By automating many of the manual tasks required to configure and monitor an Oracle
Data Guard configuration, the broker enhances the high availability, data protection,
and disaster protection capabilities that are inherent in Oracle Data Guard. Access is
possible through a client to any system in the Oracle Data Guard configuration,
eliminating any single point of failure. If the primary database fails, the broker
automates the process for any one of the standby databases to replace the primary
database and take over production processing. The database availability that Oracle
Data Guard provides makes it easier to protect your data.
Higher availability and scalability with Oracle Real Application Clusters (Oracle
RAC) Databases:
While Oracle Data Guard broker enhances disaster protection by maintaining
transactionally consistent copies of the primary database, Oracle Data Guard,
configured with Oracle high availability solutions such as Oracle Real Application
Clusters (Oracle RAC) databases, further enhances the availability and scalability of
any given copy of that database. The intrasite high availability of an Oracle RAC
database complements the intersite protection that is provided by Oracle Data Guard
broker.
Consider that you have a cluster system hosting a primary Oracle RAC database
comprised of multiple instances sharing access to that database. Further consider that
an unplanned failure has occurred. From an Oracle Data Guard broker perspective,
the primary database remains available as long as at least one instance of the
clustered database continues to be available for transporting redo data to the standby
databases. Oracle Clusterware manages the availability of instances of an Oracle
RAC database. It works to rapidly recover failed instances to keep the primary
database available. If Oracle Clusterware is unable to recover a failed instance, the
broker continues to run automatically with one less instance. If the last instance of the
primary database fails, the broker provides a way to fail over to a specified standby
database. If the last instance of the primary database fails, and fast-start failover is
1-5
Chapter 1
Benefits of Oracle Data Guard Broker
enabled, the broker can continue to provide high availability by automatically failing
over to a pre-determined standby database.
The broker is integrated with Oracle Clusterware so that database role changes occur
smoothly and seamlessly. This is especially apparent in the case of a planned role
switchover (for example, when a physical standby database is directed to take over
the primary role while the former primary database assumes the role of standby). The
broker and Oracle Clusterware work together to temporarily suspend service
availability on the primary database, accomplish the actual role change for both
databases during which Oracle Clusterware works with the broker to properly restart
the instances as necessary on the old primary database, and then start services
defined on the new primary database. The broker manages the underlying Oracle
Data Guard configuration and its database roles while Oracle Clusterware manages
service availability that depends upon those roles. Applications that rely on Oracle
Clusterware for managing service availability will see only a temporary suspension of
service as the role change occurs in the Oracle Data Guard configuration.
Note that while Oracle Clusterware helps to maintain the availability of the individual
instances of an Oracle RAC database, the broker coordinates actions that maintain
one or more physical or logical copies of the database across multiple geographically
dispersed locations to provide disaster protection. Together, the broker and Oracle
Clusterware provide a strong foundation for Oracle's high-availability architecture.
See Also:
Oracle Real Application Clusters Administration and Deployment Guide for
information about Oracle Clusterware
1-6
Chapter 1
Benefits of Oracle Data Guard Broker
Although DGMGRL cannot automatically create a new standby, you can use
DGMGRL commands to configure and monitor an existing standby, including those
created using Cloud Control.
1-7
Chapter 1
Oracle Data Guard Broker Components
database before automatically initiating and completing the many steps in switchover
or failover operations across the multiple databases in the configuration.
Transparent to application:
Use of the broker is possible for any database because the broker works transparently
with applications; no application code changes are required to accommodate a
configuration that you manage with the broker.
1-8
Chapter 1
Oracle Data Guard Broker User Interfaces
See Also:
My Oracle Support note 787461.1 at http://support.oracle.com for information
about which versions of Cloud Control are required to manage the full set of
Oracle Data Guard features in various Oracle Database releases
1-9
Chapter 1
Oracle Data Guard Monitor
See Also:
Oracle Data Guard Command-Line Interface Reference for complete reference
information for the Oracle Data Guard command-line interface.
See Also:
Starting the Data Guard Broker for information on starting the broker
Whether you use Cloud Control or DGMGRL to manage a database, the DMON
process is the server-side component that interacts with the local database and the
DMON processes of the other databases to perform the requested function. The
DMON process is also responsible for monitoring the health of the broker configuration
and for ensuring that every database has a consistent description of the configuration.
Figure 1-2 shows the broker's DMON process as one of several background
processes that constitute an instance of the Oracle database. Each database instance
shown in the figure has its own DMON process.
1-10
Chapter 1
Oracle Data Guard Monitor
User
User User User User Processes
Oracle
Background
Data Processes
Process System Database Log
Archiver
Recoverer Guard Writer Writer
(RECO) Monitor Monitor Monitor (ARC0)
(PMON) (SMON) (DBW0) (LGWR)
(DMON)
Primary Database
Standby Database
User
User User User User Processes
The zigzag arrow in the center of Figure 1-2 represents the two-way Oracle Net
Services communication channel that exists between the DMON processes of two
databases in the same broker configuration.
This two-way communication channel is used to pass requests between databases
and to monitor the health of all of the databases in the broker configuration.
1-11
Chapter 1
Oracle Data Guard Monitor
• PROC_TIME — timestamp of when the process was started or registered for inclusion
in the view
See Also:
See Also:
Managing Database Properties for more information
1-12
Chapter 1
Oracle Data Guard Monitor
database administrator (DBA) when using the broker with any related initialization
parameter values recorded in the server parameter file.
When you set values for database properties in the broker configuration, the broker
records the change in the configuration file and propagates the change to all of the
databases in the Oracle Data Guard configuration.
Note:
The broker supports both the default and nondefault server parameter file
filenames. If you use a nondefault server parameter filename, the initialization
parameter file must include the complete filename and location of the server
parameter file. If this is an Oracle RAC database, there must be one nondefault
server parameter file for all instances.
See Also:
Configurable (Changeable) Properties for more information
1-13
2
Oracle Data Guard Installation
For all databases that you want to add to a broker configuration, you must complete
installation and configuration tasks.
• Oracle Data Guard Installation
• Prerequisites
See Also:
Oracle Data Guard Broker Upgrading and Downgrading for help with
upgrading to a new release in an Oracle Data Guard broker configuration
2-1
Chapter 2
Prerequisites
Note:
An observer can be run from any platform that supports it, and that platform
can be different from the platform of the primary or target standby
database.
2.2 Prerequisites
These are the conditions that must be met before you can use the broker.
• The primary and standby databases must be using the same version of Oracle
Database and each can be installed in either a single-instance or multi-instance
environment. The database must be licensed for Oracle Enterprise Edition or
Personal Edition.
• You must use a server parameter file (SPFILE) to ensure the broker can
persistently reconcile values between broker properties and any related
initialization parameter values. See Configurable (Changeable) Properties for
more information.
If any of the databases in the configuration is an Oracle RAC database, you must
configure the server parameter file (SPFILE) appropriately for use in an Oracle
RAC environment.
See Also:
Oracle Real Application Clusters Administration and Deployment Guide for
information about initialization files in an Oracle RAC
• The value of the DG_BROKER_START initialization parameter must be set to TRUE. See
Starting the Data Guard Broker for more information. (Cloud Control sets this
parameter automatically.)
• If any of the databases in the configuration is an Oracle RAC database, you must
set up the DG_BROKER_CONFIG_FILEn initialization parameters for that database such
that they point to the same shared files for all instances of that database. The
shared files could be files on a cluster file system, if available, or stored using
Oracle Automatic Storage Management (Oracle ASM).
See Also:
Configuration file information in Configuration Management. Also, see
Setting Up the Broker Configuration Files for details about setting up the
broker configuration file.
• Network configuration files must be set up on the primary database and on the
standby database if you configure an existing standby database into the broker
configuration. Cloud Control can assist you in creating the configuration files when
creating a standby database.
2-2
Chapter 2
Prerequisites
See Also:
Oracle Database Net Services Administrator's Guide for more information
about network configuration files
Caution:
The service should NOT be one that is defined and managed by Oracle
Clusterware.
– Have failover attributes set to allow the primary database's Redo Transport
Services to continue shipping redo data to an Oracle RAC standby database,
even if the receiving instance of that standby database has failed.
See Also:
Oracle Database Net Services Administrator's Guide for more information
about connect identifiers
Alternatively, you can use a different static service name. If you do, be sure to
modify the StaticConnectIdentifier instance-specific property to reflect the static
service that has been registered.
To ensure that the connect identifier has been set up correctly, use the VALIDATE
STATIC CONNECT IDENTIFIER command.
2-3
Chapter 2
Prerequisites
See Also:
See Also:
• Starting the Data Guard Broker for more information about preparing and
starting Oracle Data Guard broker
2-4
3
Managing Broker Configurations
Use Oracle Data Guard broker to manage and monitor the configuration. The broker
uses Oracle Enterprise Manager to report health and other operational characteristics.
• Configuration Support
• Configuration Properties
• Setting Up the Broker Configuration Files
• Starting the Data Guard Broker
• Management Cycle of a Broker Configuration
• Enable and Disable Operations
• Configuration Status
3-1
Chapter 3
Configuration Support
• On physical standby databases, Redo Apply applies the redo data to keep the
standby consistent with the primary database.
• On logical standby databases, SQL Apply applies the redo data to keep the
standby consistent with the primary database.
• On snapshot standby databases, the redo data is received but not applied until the
snapshot standby database is converted back to a physical standby database.
• On far sync instances, the redo data is received and then forwarded to a physical
standby database. A far sync instance does not have data files and does not apply
any of the redo data it has received.
The broker's Oracle Data Guard monitor (DMON) process configures and maintains
the broker configuration as a group of objects that you can manage and monitor as a
single unit. Thus, when you enter a command that affects multiple databases, the
DMON process:
• Carries out your request on the primary database
• Coordinates with the DMON process for each of the other databases, as required
for your request
• Updates the configuration file on the local system
• Communicates with the DMON process for each of the other databases to update
their copies of the configuration file
Through the DMON process, you can configure, monitor, and control the databases
and the configuration together as a unit. If you disable the configuration, broker
management of all of the databases in the configuration is also disabled. If you later
enable the configuration, broker management is enabled for each database in the
configuration.
Figure 3-1 shows a broker configuration with a primary database and physical standby
database.
On the primary database, the figure shows the redo transport services in addition to
the following main components: the primary database, DMON, the online redo log
files, and the archived redo log files. The figure also shows standby redo log files in
outline form on the primary side; the standby redo logs are outlined to indicate they are
currently inactive but have been configured in preparation for a switchover or failover
to the standby role. The physical standby database includes the following components:
a standby database, log apply services, DMON, archived redo log files, and standby
redo log files. The online redo log files on the physical standby database are outlined
to indicate they are currently inactive but have been configured in preparation for a
switchover or failover to the primary role.
See Also:
Oracle Data Guard Concepts and Administration for more information about
standby databases
3-2
Chapter 3
Configuration Properties
Primary Standby
Standby Redo Online Redo
Log Files Log Files
Primary Standby
Database Database
Archived
Redo
Log Files
Archived
Log Redo
Transport Log Files
Services
Oracle
Net
3-3
Chapter 3
Setting Up the Broker Configuration Files
See Also:
Oracle Data Guard Broker Properties for complete descriptions of all broker
configuration properties
• These parameters can only be set or changed when the Oracle Data Guard broker
is not running (DG_BROKER_START=FALSE).
• These parameters must specify an Oracle ASM, Oracle OCFS, or NFS that is
shared for all Oracle RAC instances.
• When an upgrade is performed using the PL/SQL package, DBMS_ROLLING, the
DG_BROKER_CONFIG_FILEn parameters must specify a location outside of Oracle
home. (The default location is the dbs directory in Oracle home.)
The Oracle Data Guard broker works with databases that use either Oracle managed
or user managed datafiles. These datafiles can reside on a file system or an Oracle
ASM disk group. The following section contains these topics:
• Renaming the Broker Configuration Files
• Managing Broker Configuration Files in an Oracle RAC Environment
3-4
Chapter 3
Setting Up the Broker Configuration Files
Note:
If the broker is managing an Oracle RAC database, the value of
DG_BROKER_CONFIG_FILE1 and the value of DG_BROKER_CONFIG_FILE2 for each of
the instances must point to the same set of physical files.
4. The method of moving the files depends upon where they currently reside and
where you want to move them to:
• If the files reside on an operating system file system, use operating system
commands to move the files to their new location.
• If the old or new location is an Oracle ASM disk group, use the
DBMS_FILE_TRANSFER.COPY_FILE function to transfer the files to their new location.
Note:
As of Release 11.2, the files can reside on disks having any supported sector
size (physical block size) up to and including 4KB sectors. Configuration files
that were generated by a release prior to 11.2 are restricted to reside only on
disks having the same sector size as was used at the time the files were first
created. These files must first be upgraded to Release 11.2 before they can be
moved to a location having a different sector size, or are otherwise expected to
reside across a mixture of sector sizes in a given broker configuration. See
Upgrading from Oracle Database 10g and Oracle Database 11g to Oracle
Database 12c for more information.
3-5
Chapter 3
Setting Up the Broker Configuration Files
Oracle
RAC Database
CFS area:
$ORACLE_BASE/admin/db_unique_name/
Instance
"inst1" DG_BROKER_CONFIG_FILE1 dr1db_unique_name.dat
DG_BROKER_CONFIG_FILE2
Instance
"inst2" DG_BROKER_CONFIG_FILE1
DG_BROKER_CONFIG_FILE2
Instance
"inst3" DG_BROKER_CONFIG_FILE1
DG_BROKER_CONFIG_FILE2
dr2db_unique_name.dat
3-6
Chapter 3
Starting the Data Guard Broker
Oracle
RAC Database
Instance
"inst1" DG_BROKER_CONFIG_FILE1 +DG/North_Sales/dr1.dat
DG_BROKER_CONFIG_FILE2
Instance
"inst2" DG_BROKER_CONFIG_FILE1
DG_BROKER_CONFIG_FILE2
Instance
"inst3" DG_BROKER_CONFIG_FILE1
DG_BROKER_CONFIG_FILE2
+DG/North_Sales/dr2.dat
Because the configuration files must be explicitly named by the user, these
configuration files are not Oracle Managed Files (OMF).To create the broker's
configuration files on an Oracle ASM disk group, set the DG_BROKER_CONFIG_FILE1 and
DG_BROKER_CONFIG_FILE2 initialization parameters to a string value that includes the
name of an existing Oracle ASM disk group, an existing directory in that disk group,
and the name of the configuration file itself.
System altered.
3-7
Chapter 3
Management Cycle of a Broker Configuration
standby database. Doing so ensures that Oracle Data Guard broker will start
automatically the next time you start any instance of the database.
Note:
If the initialization parameter DG_BROKER_START=TRUE, then archivelog mode is
automatically enabled at the database level if a SQL STARTUP MOUNT or ALTER
DATABASE MOUNT statement is executed against a primary database.
Create the
Configuration
Enable the
Configuration
Monitor and
Tune the
Configuration
3-8
Chapter 3
Management Cycle of a Broker Configuration
Note:
You can enable or disable the configuration using DGMGRL. You cannot
disable the configuration using Cloud Control. You can enable the configuration
using Cloud Control in the event that it was previously disabled using
DGMGRL.
3-9
Chapter 3
Management Cycle of a Broker Configuration
See Also:
Switchover and Failover Operations for more information about role changes
See Also:
Managing the Members of a Broker Configuration for more information about
database state changes
See Also:
Managing the Members of a Broker Configuration and Oracle Data Guard
Broker Properties for complete information about database properties
3-10
Chapter 3
Enable and Disable Operations
See Also:
Managing Data Protection Modes for information about managing data
protection modes
Note:
If you disable broker management of a standby database in the broker
configuration, that standby database cannot be used by the broker as a failover
target in the event of loss of the primary database.
3-11
Chapter 3
Configuration Status
See Also:
How the Protection Modes Influence Broker Operations
3-12
4
Managing the Members of a Broker
Configuration
Learn how to manage broker configuration members, and monitor the state of each
member of the configuration.
• Managing Broker Configuration Members
• Managing States of Broker Configuration Members
• Managing Database Properties
• Managing Redo Transport Services
• Managing Redo Transport Services for Recovery Appliance
• Managing Log Apply Services
• Managing Data Protection Modes
• Managing Far Sync Instances
• Managing Fast-Start Failover
• Managing Database Conversions
• Database Status
4-1
Chapter 4
Managing States of Broker Configuration Members
4-2
Chapter 4
Managing States of Broker Configuration Members
The following sections describe in more detail the possible state transitions for primary
and standby databases.
4-3
Chapter 4
Managing States of Broker Configuration Members
Note:
If you perform online database relocation with Oracle RAC One Node on a
physical standby, then the new instance is started in the same mode as the
currently running instance. Therefore, if the database is mounted on the original
instance, then the database will be mounted on the new instance. Likewise, if
the database is open on the original instance, then the database will be open
on the new instance. This may result in the new instance starting in a mode
that does not match the start option recorded with Oracle Clusterware for the
database.
4-4
Chapter 4
Managing Database Properties
See Also:
• Managing Log Apply Services for information about managing SQL Apply
• Managing Redo Transport Services for more details on managing redo
transport services and a list of redo transport-related properties
• Oracle Data Guard Concepts and Administration for information about the
database guard
• Oracle Data Guard Command-Line Interface Reference for complete
information about the EDIT DATABASE command.
See Also:
Oracle Data Guard Broker Properties for a detailed list of all database
properties
To see these properties, you can use the DGMGRL SHOW command or Edit Properties
page in Cloud Control. Example 4-1 uses the SHOW DATABASE VERBOSE command to
display information about the North_Sales database.
See Also:
Oracle Data Guard Command-Line Interface Reference for complete
information about the DGMGRL command-line interface
4-5
Chapter 4
Managing Database Properties
Database - North_Sales
Role: PRIMARY
Intended State: TRANSPORT-ON
Instance(s):
c0
Properties:
DGConnectIdentifier = 'North_Sales.example.com'
ObserverConnectIdentifier = ''
LogXptMode = 'ASYNC'
RedoRoutes = ''
DelayMins = '0'
Binding = 'optional'
MaxFailure = '0'
MaxConnections = '1'
ReopenSecs = '300'
NetTimeout = '30'
RedoCompression = 'DISABLE'
LogShipping = 'ON'
PreferredApplyInstance = ''
ApplyInstanceTimeout = '0'
ApplyLagThreshold = '0'
TransportLagThreshold = '0'
TransportDisconnectedThreshold = '0'
ApplyParallel = 'AUTO'
ApplyInstances = '0'
StandbyFileManagement = 'AUTO'
ArchiveLagTarget = '0'
LogArchiveMaxProcesses = '5'
LogArchiveMinSucceedDest = '1'
DataGuardSyncLatency = '0'
DbFileNameConvert = 'dbs/cdb2_, dbs/cdb1_, dbs/bt, dbs/t, dbs/
cdb4_, dbs/cdb1_, dbs/dt, dbs/t'
LogFileNameConvert = 'dbs/cdb2_, dbs/cdb1_, dbs/bt, dbs/t, dbs/
cdb4_, dbs/cdb1_, dbs/dt, dbs/t'
FastStartFailoverTarget = ''
InconsistentProperties = '(monitor)'
InconsistentLogXptProps = '(monitor)'
SendQEntries = '(monitor)'
LogXptStatus = '(monitor)'
RecvQEntries = '(monitor)'
PreferredObserverHosts = ''
StaticConnectIdentifier = '(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)
(HOST=North_Sales.example.com)(PORT=2840))
(CONNECT_DATA=(SERVICE_NAME=North_Sales_DGMGRL.example.com)
(INSTANCE_NAME=north_sales1)(SERVER=DEDICATED)))'
StandbyArchiveLocation = 'USE_DB_RECOVERY_FILE_DEST'
StandbyAlternateLocation = ''
LogArchiveTrace = 255
LogArchiveFormat = 'db1r_%d_%t_%s_%R.arc'
TopWaitEvents = '(monitor)'
4-6
Chapter 4
Managing Database Properties
Database Status:
SUCCESS
Cloud Control displays the information obtained from these properties on the Edit
Properties page.
When the configuration is enabled, the broker keeps member property values in the
broker configuration file consistent with the values being used by the member. For
those that are related to initialization parameter properties, the broker maintains
4-7
Chapter 4
Managing Database Properties
consistency among the value in the broker configuration file, the current value, and the
initialization parameter value in the server parameter file, as follows:
• For dynamic parameters, the broker keeps the value of the parameter consistent
in the system global area (SGA) for the instance, in the broker configuration file,
and in the server parameter file.
• For static parameters and properties, the parameter value in the system global
area (SGA) for the instances may temporarily differ from what is in the broker
configuration file and in the server parameter file. Typically, the in-memory value
becomes the same as the server parameter file value and the broker configuration
file value the next time the instance is stopped and restarted.
Even when the configuration is disabled, you can update property values through the
broker. The broker retains the property settings (without validating the values) and
updates the initialization parameters in the server parameter file and the settings in
memory the next time you enable the broker configuration.
Note:
Even though you can change a property value when the configuration is
disabled, the change does not take effect on the configuration member unless
the configuration is enabled. Also note that some property values can only be
changed in the disabled state.
4-8
Chapter 4
Managing Redo Transport Services
See Also:
• StandbyAlternateLocation
• Binding
• LogShipping
• LogXptMode
• MaxConnections
• MaxFailure
• NetTimeout
• RedoCompression
• RedoRoutes
• ReopenSecs
• StandbyArchiveLocation
You can use these properties to specify how the broker configures redo transport
services for the standby database. The actual redo transport setup, such as setting the
LOG_ARCHIVE_DEST_n initialization parameter, is carried out by the broker on the primary
database (except for the StandbyArchiveLocation property). If changing the property
requires that you change the LOG_ARCHIVE_DEST_n initialization parameter attributes, the
broker forces a log switch on each thread so that the new setting is adopted
immediately by the primary database.
You should also preset these properties on the primary database in preparation for it
to be switched over to a standby database.
4-9
Chapter 4
Managing Redo Transport Services
SYNC
Configures redo transport services for this standby database using the SYNC and AFFIRM
attributes of the LOG_ARCHIVE_DEST_n initialization parameter. This mode, along with
standby redo log files, is required for configurations operating in either maximum
protection mode or maximum availability mode. This redo transport service enables
the highest grade of data protection to the primary database, but also can incur a
higher performance impact.
ASYNC
Configures redo transport services for this standby database using the ASYNC and
NOAFFIRM attributes of the LOG_ARCHIVE_DEST_n initialization parameter. This mode, along
with standby redo log files, enables a moderate grade of protection to the primary
database, and lower performance impact.
FASTSYNC
Configures redo transport services for this standby database using the SYNC and
NOAFFIRM attributes of the LOG_ARCHIVE_DEST_n initialization parameter. This mode is only
available in maximum availability protection mode.
4-10
Chapter 4
Managing Redo Transport Services
See Also:
• RedoRoutes for information about redo routing rules when you use the
RedoRoutes property
To see the runtime RedoRoutes configuration, use the SHOW CONFIGURATION command. For
example:
DGMGRL> SHOW CONFIGURATION;
Configuration - Sales_Configuration
4-11
Chapter 4
Managing Redo Transport Services
Configuration Status:
SUCCESS
Note that the ASYNC redo transport attribute was explicitly specified in the redo route
rule for the Remote_Sales destination to enable real-time cascading of redo to that
destination. (Real-time cascading requires a license for the Oracle Active Data Guard
option.)
To disable real-time cascading of redo, do not specify the ASYNC redo transport
attribute. For example:
DGMGRL> EDIT DATABASE 'Local_Sales' SET PROPERTY 'RedoRoutes' = '(North_Sales :
Remote_Sales)';
Configuration - Sales_Configuration
Configuration Status:
SUCCESS
To see the full RedoRoutes configuration, use the SHOW CONFIGURATION VERBOSE command.
For example:
DGMGRL> SHOW CONFIGURATION VERBOSE;
Configuration - Sales_Configuration
4-12
Chapter 4
Managing Redo Transport Services
Properties:
FastStartFailoverThreshold = '180'
OperationTimeout = '30'
TraceLevel = 'USER'
FastStartFailoverLagLimit = '300'
CommunicationTimeout = '180'
ObserverReconnect = '0'
FastStartFailoverAutoReinstate = 'TRUE'
FastStartFailoverPmyShutdown = 'TRUE'
BystandersFollowRoleChange = 'ALL'
ObserverOverride = 'FALSE'
ExternalDestination1 = ''
ExternalDestination2 = ''
PrimaryLostWriteAction = 'CONTINUE'
ConfigurationWideServiceName = 'c0_CFG'
Configuration Status:
SUCCESS
Note:
Oracle does not recommend turning off redo transport services to all standby
databases. This increases the risk of data loss if the primary database fails.
Turn redo transport services on and off to an individual standby database using the
LogShipping database property on the standby database. The LogShipping property
accepts values ON and OFF. If you set the LogShipping property to OFF for a standby
database, redo transport services to this standby database are turned off, while redo
transport services to other databases are not affected. You can set LogShipping to ON to
turn back on redo transport services to the standby database.
The relationship between setting the primary database state and setting the
LogShipping property is as follows:
• If the primary database state is set to TRANSPORT-OFF, redo transport services to all
the standby databases are stopped regardless of the LogShipping property values
of the individual standby databases.
• If the primary database state is set to TRANSPORT-ON, redo transport services to each
standby database are determined by the LogShipping property of that database.
4-13
Chapter 4
Managing Redo Transport Services
Example 4-4 and Example 4-5 show how to turn off redo transport services in two
different scenarios.
Example 4-4 Turn Off Redo Transport Services to All Standby Databases
DGMGRL> EDIT DATABASE 'North_Sales' SET STATE='TRANSPORT-OFF';
DGMGRL> SHOW DATABASE 'North_Sales';
Database - North_Sales
Role: PRIMARY
Intended State: TRANSPORT-OFF
Instance(s):
north_sales1
Database Status:
SUCCESS
Example 4-5 Turn Off Redo Transport Services to a Specific Standby Database
DGMGRL> EDIT DATABASE 'South_Sales' SET PROPERTY 'LogShipping'='OFF';
Property "LogShipping" updated
For online redo log files, use the OnlineArchiveLocation and OnlineAlternateLocation
properties on a primary, logical, or snapshot standby database.
The StandbyArchiveLocation property specifies a location to store archived redo log
files. The broker uses the location to store only archived redo log files received from
the primary database. For archived redo log files generated locally when the database
is either the primary database or a logical standby database, you need to specify the
OnlineArchiveLocation property. The broker allows the value of the
StandbyArchiveLocation and OnlineArchiveLocation properties to be the same as the
location you set up for locally generated logs, in which case the broker sets up the
VALID_FOR attribute of the destination appropriately so that it can be used for both the
archived redo log files received from the primary database and archived redo log files
generated locally.
You can also set up an alternate location to store archived redo log files by using the
StandbyAlternateLocation and OnlineAlternateLocation properties. The alternate
locations specified by these properties are where the archived redo log files are stored
if the original archive location (specified by StandbyArchiveLocation or
OnlineArchivelocation) fails. The broker sets up the alternate location properly using
the ALTERNATE attribute of the LOG_ARCHIVE_DEST_n initialization parameter.
4-14
Chapter 4
Managing Redo Transport Services
Note:
You can use the database recovery area to store archived redo log files on the
standby. In such a case, the value of the StandbyArchiveLocation and
OnlineArchiveLocation properties can be set to USE_DB_RECOVERY_FILE_DEST.
If you are not using a database recovery area, then on a logical standby
database Oracle recommends that the OnlineArchiveLocation property be
different from the value of the StandbyArchiveLocation property.
See Also:
Oracle Data Guard Broker Properties for complete information about these
database properties
4-15
Chapter 4
Managing Redo Transport Services
See also:
Oracle Data Guard Concepts and Administration for additional information
about the LOG_ARCHIVE_DEST_n initialization parameter
Database - South_Sales
Database Status:
SUCCESS
The transport lag can help you identify any problems that may exist with the redo
transport services.
You can set the TransportLagThreshold database configurable property to generate a
health check warning when the transport of redo data to a standby database or far
sync instance lags behind the generation of redo data on the primary database.
The following command sets the TransportLagThreshold property to 15 seconds:
DGMGRL> EDIT DATABASE 'South_Sales' SET PROPERTY 'TransportLagThreshold'=15;
Property TransportLagThreshold updated
4-16
Chapter 4
Managing Redo Transport Services for Recovery Appliance
4-17
Chapter 4
Managing Log Apply Services
Appliance, you can set up the RedoRoutes property so that the primary sends redo only
to the physical standby, and the physical standby then forwards that redo to the
Recovery Appliance. To accomplish this, the RedoRoutes property must be set as
follows:
• On the North_Sales database, the RedoRoutes property must specify that if
North_Sales is in the primary role, then it should ship redo to the South_Sales
database using synchronous transport mode. This rule prevents the primary from
shipping redo data directly to the Recovery Appliance,
EnterpriseRecoveryAppliance.
Note that the ASYNC redo transport attribute was explicitly specified in the redo route
rule for the EnterpriseRecoveryAppliance destination to enable real-time cascading of
redo to that destination.
Once a Recovery Appliance has been added to a broker configuration, it can receive
redo from either the primary database or a standby database. Example 4-6 shows how
to set up a Recovery Appliance to receive redo from a physical standby database.
See Also:
– DelayMins
– PreferredApplyInstance
– ApplyInstances
4-18
Chapter 4
Managing Log Apply Services
– LsbyPreserveCommitOrder
– LsbyRecordSkipErrors
– LsbyRecordSkipDdl
– LsbyRecordAppliedDdl
– LsbyMaxSga
– LsbyMaxServers
There are some properties related to SQL Apply that, if changed, may require a
restart of SQL Apply if the current database state is APPLY-ON. See the information
in Oracle Data Guard Broker Properties about properties related to SQL Apply, to
determine which ones require SQL Apply to be restarted.
If the current database state is APPLY-OFF, the property changes will take effect the
next time the database state is changed to APPLY-ON.
Caution:
Because the broker automatically enables real-time apply on standby
databases, Oracle recommends that you configure all databases to use
Flashback Database.
4-19
Chapter 4
Managing Log Apply Services
Parallelism is enabled by default, which means Redo Apply automatically chooses the
optimal number of parallel processes based on the number of CPUs in the system.
(This is equivalent to setting the ApplyParallel property to AUTO.) You can disable
parallelism by setting the ApplyParallel property to NO.
Note:
Parallel Redo Apply is different from multi-instance Redo Apply. Parallel Redo
Apply means that there are multiple Redo Apply slaves per instance; this value
is set using the broker ApplyParallel property. Multi-instance Redo Apply
means that there are multiple instances running Redo Apply; this value is set
with the broker ApplyInstances property. The two properties can be used
together to control the Redo Apply slaves on each instance on which apply is
running in multi-instance apply. The number of parallel slaves specified by the
ApplyParallel property will be the same on each instance in a multi-instance
apply configuration.
See Also:
ApplyParallel
ApplyInstances
4-20
Chapter 4
Managing Log Apply Services
To control the number of parallel query servers used by SQL Apply, you can use the
LsbyMaxServers database property.
You can control the trade off between SQL Apply performance and the commit order
of transactions. The LsbyPreserveCommitOrder database property controls whether
transactions are committed on the logical standby database in the exact same order in
which they were committed on the primary database. Preserving commit order may
affect performance.
See Also:
• LsbyMaxSga
• LsbyMaxServers
Because every logical standby database might have a different interest in the set of
events to be recorded in this table, Oracle Data Guard provides a means to control the
event recording. From the Oracle Data Guard broker, you can use the LsbyRecord*
database properties (for example, LsbyRecordSkipDdl or LsbyRecordSkipErrors) to
control recording of a particular set of events. The value of these properties are either
TRUE or FALSE, indicating the turning on or off of the event recording.
4-21
Chapter 4
Managing Log Apply Services
Note:
The information in this section is not applicable to snapshot standby databases
or far sync instances.
• The second method is to change the apply instance when the apply instance is
already selected and is running. To change the apply instance, issue the
DGMGRL SET STATE command to set the standby database state to APPLY-ON, with
a specific apply instance argument. The SET STATE command will update the
PreferredApplyInstance property to the new apply instance value, and then move
log apply services to the new instance. For example, use DGMGRL SHOW command
to show the available instances for the standby database, then issue the EDIT
DATABASE command to move log apply services to the new instance:
Database - South_Sales
Database Status:
SUCCESS
4-22
Chapter 4
Managing Log Apply Services
Database - South_Sales
Database Status:
SUCCESS
Ensure that the new apply instance is running when the command is issued.
Otherwise, the apply instance remains the same.
Once the apply instance is selected, the broker keeps apply instance information in the
broker configuration file so that even if the standby database is shut down and
restarted, the broker still selects the same instance to start log apply services. The
apply instance remains unchanged until changed by the user or it fails for any reason
and the broker decides to do an apply instance failover.
4-23
Chapter 4
Managing Log Apply Services
In addition, if the physical standby database was operating in real-time query mode
when the apply instance failed, then after Oracle recovery cleanup is completed, the
broker opens any instances that had been automatically closed. If the failed apply
instance was the only instance open, then the instance chosen as the new apply
instance is opened before starting apply services so that real-time query is once again
in effect.
See Also:
Database Status:
SUCCESS
The apply lag can help you identify any problems that may exist with both the redo
transport services and the log apply services.
You can set the ApplyLagThreshold database configurable property to generate a health
check warning when a standby database or far sync instance lags behind the data in
the primary database.
The following command sets the ApplyLagThreshold property to 15 seconds:
DGMGRL> EDIT DATABASE 'South_Sales' SET PROPERTY 'ApplyLagThreshold'=15;
Property ApplyLagThreshold updated
4-24
Chapter 4
Managing Data Protection Modes
4.7.1.1 Setting the Protection Mode Task 1: Determine Which Data Protection
Mode You Want to Use
Each data protection mode provides a different balance of data protection, data
availability, and database performance.
To select the data protection mode that meets the needs of your business, carefully
consider your data protection requirements and the performance expectations of your
users.
Note:
Maximum protection mode cannot be used in the following situations:
• If the only standby database in a configuration is a snapshot standby
• If a far sync instance is the only configuration member receiving redo in
synchronous mode from the primary database
Maximum Availability
This protection mode provides the highest level of data protection that is possible
without compromising the availability of a primary database. Transactions do not
commit until all redo data needed to recover those transactions has been written to the
online redo log and to the standby redo log on at least one synchronized standby
database. If the primary database cannot write its redo stream to at least one
4-25
Chapter 4
Managing Data Protection Modes
Maximum Performance
This protection mode provides the highest level of data protection that is possible
without affecting the performance of a primary database. This is accomplished by
allowing transactions to commit as soon as all redo data generated by those
transactions has been written to the online log. Redo data is also written to one or
more standby databases, but this is done asynchronously with respect to transaction
commitment, so primary database performance is unaffected by delays in writing redo
data to the standby database(s).
This protection mode offers slightly less data protection than maximum availability
mode and has minimal impact on primary database performance.
This is the default protection mode.
You can enable fast-start failover if the protection mode is maximum performance.
Maximum Protection
This protection mode ensures that no data loss will occur if the primary database fails.
To provide this level of protection, the redo data needed to recover a transaction must
be written to both the online redo log and to the standby redo log on at least one
synchronized standby database before the transaction commits. To ensure that data
loss cannot occur, the primary database will shut down, rather than continue
processing transactions, if it cannot write its redo stream to at least one synchronized
standby database.
Transactions on the primary are considered protected as soon as Oracle Data Guard
has written the redo data to persistent storage in a standby redo log file. Once that is
done, acknowledgment is quickly made back to the primary database so that it can
proceed to the next transaction. This minimizes the impact of synchronous transport
on primary database throughput and response time. To fully benefit from complete
Oracle Data Guard validation at the standby database, be sure to operate in real-time
apply mode so that redo changes are applied to the standby database as fast as they
are received. Oracle Data Guard signals any corruptions that are detected so that
immediate corrective action can be taken.
Because this data protection mode prioritizes data protection over primary database
availability, Oracle recommends that a minimum of two standby databases be used to
protect a primary database that runs in maximum protection mode to prevent a single
standby database failure from causing the primary database to shut down. If only one
standby database is supporting maximum protection mode, Oracle Data Guard broker
will disallow the shutdown of the apply instance. This prevents the primary database
from shutting down.
You can enable fast-start failover if the protection mode is maximum protection.
4-26
Chapter 4
Managing Data Protection Modes
See Also:
4.7.1.2 Setting the Protection Mode Task 2: Set up standby redo log files
You must add standby redo log files on all standby databases, regardless of the
protection mode you are using.
Also, Oracle requires that you add standby redo log files on the primary database in
preparation for a future switchover or failover. Standby redo log files are required on
the primary database if you want to enable fast-start failover.
Cloud Control automatically prompts you to select one or more standby databases in
the configuration and sets up standby redo log (SRL) files on them and on the primary
database in preparation for a future role change.
See Also:
If you are using the DGMGRL command-line interface, follow the instructions in
Oracle Data Guard Concepts and Administration to configure standby redo log
files.
4.7.1.3 Setting the Protection Mode Task 3: Set the redo transport mode
If the data protection mode requires that you change the redo transport mode used by
any of the standby databases, then either change the LogXptMode database property on
each standby database, or set the RedoRoutes property on the primary database or on
the far sync instance that is directly connected to the standby database.
See Managing Redo Transport Services for more information about setting the redo
transport service. Table 4-2 shows the protection modes and the corresponding redo
transport service.
Cloud Control automatically specifies the correct redo transport service on the primary
database in preparation for a future switchover.
Protection Mode Redo Transport Standby Redo Log Usable with Fast-Start
Files Needed? Failover?
MAXPROTECTION SYNC Yes Yes
MAXAVAILABILITY SYNC, FASTSYNC Yes Yes1
MAXPERFORMANCE ASYNC Yes Yes
4-27
Chapter 4
Managing Data Protection Modes
1 Because FASTSYNC transport mode uses the NOAFFIRM attribute of the LOG_ARCHIVE_DEST_n
parameter, data loss is possible. This means that a fast-start failover cannot be initiated when FASTSYNC
is used and the standby is missing redo data.
4.7.1.4 Setting the Protection Mode Task 4: Using DGMGRL or Cloud Control
These steps describe how to set the protection mode using DGMGRL commands or
Cloud Control.
With DGMGRL:
1. Use the EDIT DATABASE (property) command and specify the standby database
whose redo transport service should be changed to correspond to the protection
mode you plan to set. For example, if you plan to set the overall Oracle Data
Guard configuration to operate in maximum availability mode, you must use the
EDIT DATABASE command to set the SYNC mode for redo transport services. For
example:
DGMGRL> EDIT DATABASE 'South_Sales' SET PROPERTY LogXptMode='SYNC';
Do this also for the primary database or another standby database in the
configuration to ensure that it can support the chosen protection mode after a
switchover.
You could also use the RedoRoutes property, as follows:
EDIT DATABASE 'North_Sales' SET PROPERTY RedoRoutes = '(LOCAL : South_Sales
SYNC)';
2. Use the EDIT CONFIGURATION SET PROTECTION MODE AS protection-mode command to
set the overall configuration protection mode. For example:
DGMGRL> EDIT CONFIGURATION SET PROTECTION MODE AS MAXAVAILABILITY;
See Scenario 4: Setting the Configuration Protection Mode for a DGMGRL scenario
showing how to set the protection mode.
With Cloud Control:
1. On the Oracle Data Guard overview page, click the link to the right of the
Protection Mode label.
2. Select Maximum Protection, Maximum Availability, or Maximum Performance and
click Continue.
3. If prompted, log in to the database with SYSDG or SYSDBA privileges and click Login.
4. Select one or more standby databases to support the protection mode that you
selected. If standby redo log files are needed, verify the names of the log files.
Click OK.
5. On the Confirmation page, click Yes.
The broker does not allow the protection mode to be directly upgraded from maximum
performance mode to maximum protection mode. You must first change from
maximum performance to maximum availability, and then to maximum protection.
4-28
Chapter 4
Managing Data Protection Modes
4-29
Chapter 4
Managing Data Protection Modes
• The broker verifies the presence of standby redo log files and the redo transport
service setting on each standby database and on the current primary database.
• The broker verifies there are no gaps in the redo data present on the target
standby database.
If the verification is successful, the switchover continues; otherwise, the switchover
fails, and the database roles and the broker configuration files remain unchanged.
WARNING:
See Also:
Switchover for more information about switchovers
See Also:
Manual Failover and Fast-Start Failover for more information about manual
failover and fast-start failover, respectively
4-30
Chapter 4
Managing Data Protection Modes
WARNING:
If you disable broker management of a standby database in the broker
configuration, that standby database cannot be used by the broker as a failover
target in the event of loss of the primary database.
As long as fast-start failover is not enabled, you can disable the entire configuration
regardless of the protection mode. You cannot disable the configuration if fast-start
failover is enabled. See Restrictions When Fast-Start Failover is Enabled for more
information.
When enabling broker management of the entire configuration, the broker first checks
to see if the protection mode will be satisfied by the redo transport settings of the
standby databases that will be enabled. If not, the enable operation fails and the
configuration remains disabled. Otherwise, the enable operation successfully enables
the configuration, and the broker enables the database using the settings saved in the
broker configuration file.
4-31
Chapter 4
Managing Far Sync Instances
Configuration - DRSolution
After a far sync instance has been added to the configuration, set up redo transport to
support maximum availability and then upgrade the protection mode:
DGMGRL> EDIT DATABASE 'North_Sales' SET PROPERTY 'RedoRoutes' = '(LOCAL : FS1 SYNC)';
DGMGRL> EDIT FAR_SYNC 'FS1' SET PROPERTY 'RedoRoutes' = '(North_Sales : South_Sales
ASYNC)';
DGMGRL> EDIT CONFIGURATION SET PROTECTION MODE AS MaxAvailability;
DGMGRL> SHOW CONFIGURATION;
Configuration - DRSolution
4-32
Chapter 4
Managing Fast-Start Failover
sync instance to the configuration so that South_Sales can send redo in synchronous
mode which in turn will send redo to the new terminal database, North_Sales, after the
role transition.
The following example shows how to add a second far sync instance to the broker
configuration:
DGMGRL> ADD FAR_SYNC FS2 AS CONNECT IDENTIFIER IS FS2.example.com;
Far Sync FS2 added
DGMGRL> EDIT FAR_SYNC 'FS2' SET PROPERTY 'RedoRoutes' = '(South_Sales : North_Sales
ASYNC)';
DGMGRL> ENABLE FAR_SYNC FS2;
Enabled.
DGMGRL> EDIT DATABASE 'South_Sales' SET PROPERTY 'RedoRoutes' = '(LOCAL : FS2 SYNC)';
DGMGRL> SHOW CONFIGURATION;
Configuration - DRSolution
If a far sync instance is monitored for availability by Oracle Clusterware (for example,
in an Oracle Restart, Oracle Real Application Clusters (Oracle RAC), or Oracle RAC
One Node installation), then use the SRVCTL utility to specify a default open mode of
mount. You can use a command such as the following:
srvctl modify database -d <db_unique_name> -startoption MOUNT
See Also:
4-33
Chapter 4
Managing Fast-Start Failover
Note:
The primary database is always shut down if a user configurable fast-start
failover condition is detected or if an application initiated a fast-start failover
by calling the DBMS_DG.INITIATE_FS_FAILOVER function.
• FastStartFailoverLagLimit
4-34
Chapter 4
Managing Fast-Start Failover
See Also:
Oracle Data Guard Broker Properties for more information
• FastStartFailoverAutoReinstate
If you want to perform diagnostic or repair work after failover has completed, you
can avoid an automatic reinstatement by setting the
FastStartFailoverAutoReinstate configuration property to FALSE.
Note:
The former primary database is never automatically reinstated if a fast-start
failover occurred because a user configurable fast-start failover condition
was detected or because an application initiated a fast-start failover by
calling the DBMS_DG.INITIATE_FS_FAILOVER function.
• FastStartFailoverTarget
4-35
Chapter 4
Managing Database Conversions
There are also other conditions under which you might want a fast-start failover to
occur.
The configurable conditions fall into two classes: those detected through the database
health-check mechanism and those detected through errors raised by the Oracle
server (such as ORA errors). When a specified condition occurs, the observer will
initiate a fast-start failover without waiting for FastStartFailoverThreshold to expire,
assuming the standby is in a valid state to accept a failover.
Each condition may be enabled or disabled individually. The Oracle Data Guard
configuration persists all user specified configurable fast-start failover conditions in the
broker configuration file.
The observer will detect when the primary database has signaled any of the enabled
health-check conditions and will immediately initiate a fast-start failover, assuming the
standby is in a valid fast-start failover state (observed and either synchronized or
within lag limits) to accept a failover.
For specified Oracle ORA-Error conditions, the primary database will notify the
observer if the error is signaled and the observer will immediately initiate a fast-start
failover, assuming the standby is in a valid fast-start failover state (observed and either
synchronized or within lag limits) to accept a failover.
Note:
The primary database will shut down and the observer will not attempt to
automatically reinstate the former primary database.
See Also:
4-36
Chapter 4
Database Status
When you are ready to convert the snapshot back into a physical standby, use the
DGMGRL CONVERT DATABASE command as follows:
DGMGRL> CONVERT DATABASE 'South_Sales' TO PHYSICAL STANDBY;
4-37
Chapter 4
Database Status
• InconsistentProperties
• InconsistentLogXptProps
Note:
Cloud Control rearranges the values of these properties for presentation in
the GUI.
You can use the SHOW DATABASE <db_unique_name> command to get a brief description of
the database (name, role, and so on), database status, and information about any
health check problems. For example, the output of the following SHOW DATABASE
command shows two problems: some redo transport services errors and an
inconsistent redo transport-related property
DGMGRL> SHOW DATABASE 'North_Sales';
Database - North_Sales
Role: PRIMARY
Intended State: TRANSPORT-OFF
Instance(s):
north_sales1
Error: ORA-16737: the redo transport service for standby
database "South_Sales" has an error
north_sales2
Error: ORA-16737: the redo transport service for standby
database "South_Sales" has an error
Warning: ORA-16715: redo transport-related property
ReopenSecs of standby "South_Sales" is inconsistent
Database Status:
ERROR
To further check the details about the database status, you can use the following
monitorable properties:
• LogXptStatus — lists all log transport errors detected on all instances of the primary
database.
4-38
Chapter 4
Database Status
See Also:
Oracle Data Guard Broker Properties for detailed information about database
properties
4-39
Chapter 4
Database Status
See Also:
See Also:
See Also:
4-40
Chapter 4
Database Status
See Also:
4-41
5
Switchover and Failover Operations
Learn how to use Oracle Data Guard broker to manage databases during switchover
and failover.
• Overview of Switchover and Failover in a Broker Environment
• Choosing a Target Standby Database
• Switchover
• Manual Failover
• Fast-Start Failover
• Database Client Considerations
5-1
Chapter 5
Choosing a Target Standby Database
need for manual intervention. The reduced need for manual intervention can increase
availability without increasing management costs. Manual failover gives you control
over exactly when a failover occurs and to which target standby database. Regardless
of the method you choose, the broker coordinates the role transition on all databases
in the configuration.
Note:
Neither a switchover nor a failover is possible to a far sync instance.
Note:
A snapshot standby cannot be the target of a switchover or fast-start failover
operation. You can, however, perform a manual failover to a snapshot standby.
A far sync instance is not a database and therefore cannot be the target of a
role transition.
For switchovers, understanding all of the factors can simplify the choice of which
standby database to consider as your new primary database. In disaster situations
where a failover is necessary, you may be more limited as to which standby database
is the best one to pick up the failed primary database's activities. Choosing a Target
Standby Database for Switchover and Choosing a Target Standby Database for
Failover provide guidelines to help you choose a target standby database.
Note:
For fast-start failover, you must pre-select at least one target standby database.
You can also pre-select multiple targets if you want to; the selection does not
have to be reciprocal.
5-2
Chapter 5
Choosing a Target Standby Database
• VALIDATE DATABASE
• VALIDATE NETWORK CONFIGURATION
• VALIDATE DATABASE SPFILE
• VALIDATE STATIC CONNECT IDENTIFIER
See Also:
• Using Cloud Control, you can view the value of the ApplyLag column for each
standby database in the Standby Databases section of the Oracle Data Guard
Overview page.
If the configuration contains both physical and logical standby databases, consider
choosing a physical standby database (that has the least amount of unapplied redo) to
be the target standby database. A switchover to a physical standby database is
preferable because all databases in the configuration will be available as standby
databases to the new primary database after the switchover operation completes.
Whereas a switchover to a logical standby database will invalidate and disable all of
the physical and snapshot standby databases in the configuration. You will then need
to re-create the physical standby databases from a copy of the new primary database
before you can reenable them. Alternatively, if you intend to switch back to the original
primary relatively soon, then you may re-enable the disabled standby databases after
the switch back.
You cannot perform a switchover to a snapshot standby database unless you first
convert it back to a physical standby database.
5-3
Chapter 5
Switchover
Note:
If the Oracle Data Guard configuration is operating in maximum protection
mode, the broker does not allow a switchover to occur to a logical standby
database. The configuration must be operating in either maximum availability
mode or maximum performance mode in order to be able to switch over to a
logical standby database.
5.3 Switchover
A switchover is a role reversal between the primary database and one of its standby
databases.
A switchover guarantees no data loss and is typically done for planned maintenance of
the primary system. During a switchover, the primary database transitions to a standby
role, and the standby database transitions to the primary role.
Whenever possible, you should switch over to a physical standby database:
5-4
Chapter 5
Switchover
• If the switchover transitions a physical standby database to the primary role, then:
– The original primary database will be switched to a physical standby role.
– Other members of the configuration will receive redo from the designated redo
source based on the new primary.
– The original primary database will be restarted as a part of the switchover
operation. Note that the new primary database does not need to be restarted.
Standby databases not involved in the switchover (known as bystander
standby databases) continue operating in the state they were in before the
switchover occurred and will automatically begin applying redo data received
from the new primary database.
• If the switchover transitions a logical standby database to the primary role, then:
– The original primary database will be switched to a logical standby role.
– Neither the primary database nor the logical standby database needs to be
restarted after the switchover completes.
Other logical standby bystander databases in the broker configuration will
remain viable after the switchover. All physical and snapshot standby
databases will be disabled and must be re-created from a copy of the new
primary database after a switchover to a logical standby database.
Switchover to a logical standby database is disallowed when the configuration is
operating in maximum protection mode.
WARNING:
Switching over to a logical standby database results in the snapshot and
physical standby databases in the broker configuration being disabled by
the broker, making these databases no longer viable as standby
databases. Reenabling Disabled Databases After a Role Change describes
how to restore their viability as standby databases.
If you intend to switch back to the original primary database relatively soon,
you may allow the physical and snapshot standbys to remain disabled.
Once you have completed the switchover back to the original primary, you
may then reenable the physical and snapshot standby databases since
they are still viable standbys for the original primary database.
5-5
Chapter 5
Switchover
Note:
In an Oracle Data Guard configuration, the SRVCTL -startoption and -role are
updated after switchover to reflect the current open mode and database role on
the new primary and standby databases. See "Database Service Configuration
Requirements" for additional information about how the broker interacts with
Oracle Restart.
5-6
Chapter 5
Switchover
5-7
Chapter 5
Manual Failover
databases automatically begin applying redo data received from the new primary
database.
In the rare event that a switchover operation fails and you are left with no primary
database, retry the switchover command. You can switch back to the original primary
and then either retry the switchover to the original target standby, or choose another
standby in the configuration to switch over to.
Note:
You can perform a manual failover even if fast-start failover is enabled. See
Performing Manual Role Changes When Fast-Start Failover Is Enabled for
more information.
5-8
Chapter 5
Manual Failover
Note:
Always try to perform a complete failover first unless redo apply has
stopped at the failover target due to an ORA-752 or ORA-600 [3020] error. If
one of these errors has occurred, follow the guidelines in "Resolving
ORA-752 or ORA-600 [3020] During Standby Recovery" in My Oracle
Support Note 1265884.1 before proceeding. This support note is available
at http://support.oracle.com.
An immediate failover should only be performed when a complete failover
is unsuccessful or in the error cases just noted. A complete failover can
occur without any data loss, depending on the destination attributes of redo
transport services, but an immediate failover usually results in some data
loss.
5-9
Chapter 5
Manual Failover
The steps in this section describe the tasks involved to perform a manual failover.
Depending on the failover and the types of standby databases involved, some of the
databases may need to be reinstated or re-created.
• Performing a Manual Failover Task 1: Determine Which of the Available Standby
Databases is the Best Target for the Failover
• Performing a Manual Failover Task 2: Start the Failover
• Performing a Manual Failover Task 3: Reset the Protection Mode
• Performing a Manual Failover Task 4: Re-establish a Disaster-Recovery
Configuration
Specify the optional IMMEDIATE clause to perform an immediate failover if any of the
following conditions are true:
• An ORA-752 error has occurred at the standby database
• An ORA-600 [3020] error has occurred at the standby database and Oracle support
has determined that it was caused by a lost write at the primary database
• A complete failover is not possible
DGMGRL> FAILOVER TO database-name IMMEDIATE;
See Also:
• FAILOVER
5-10
Chapter 5
Manual Failover
If you are performing a complete failover, then all accumulated redo data is applied
before the database role is changed to primary. If you are performing an immediate
failover, then the database role is changed to primary without applying any
accumulated redo data.
If the target is a snapshot standby database, the broker first converts the database to
a physical standby database.
No instances are shutdown on the target standby database when doing a failover.
Note:
If you perform a manual failover when fast-start failover is enabled:
• The failover can only be performed to the current target standby database.
• The broker preserves the protection mode that was in effect prior to the
failover.
Caution:
Do not attempt to reinstate the old primary database if an ORA-752 or
ORA-600 [3020] error has occurred at the failover target. Instead, the old
primary database must be re-created as a standby from a backup of the
new primary using the procedure described in How to Re-create and
Reenable a Disabled Database.
5-11
Chapter 5
Manual Failover
After a complete failover finishes, any bystander standby database that is not
viable as a standby for the new primary database will be disabled by the broker.
This can happen for either of the following reasons:
– A bystander standby database has applied more redo data than the new
primary database itself had applied when it was a standby database. The
standby database must be re-created or reinstated before it can serve as a
standby for the new primary database.
– The failover was to a logical standby database. The broker disables all of the
physical and snapshot standby databases in the configuration. They must be
re-created before they can serve as standby to the new primary database.
5-12
Chapter 5
Manual Failover
This property also affects whether the broker skips viability checks of
bystander standby databases when a fast-start failover occurs.
d. Starts redo transport services to begin transmitting redo data to all bystander
standby databases that were not disabled.
Note:
Bystander standby databases may be disabled by the broker during the
failover, and they must be reinstated or re-created before they can
serve as standby databases to the new primary database. Oracle
recommends configuring Flashback Database on every database so
that if failover occurs to a physical standby database, you can more
easily reinstate any disabled standby databases. If failover occurs to a
logical standby database, all physical and snapshot standby databases
will be disabled by the broker. In this case, Flashback Database cannot
be used to reinstate databases. They must be re-created from a copy
of the new primary database. Logical standby databases that are
disabled during failover can be reinstated.
5-13
Chapter 5
Manual Failover
3. Transitions the target standby database into the primary role, opens the new
primary database in read/write mode, and starts redo transport services.
After an immediate failover completes, all the standby databases in the
configuration, regardless of their type, are disabled. They may be reinstated if
Flashback Database is enabled on those databases. Otherwise, they must be re-
created from a copy of the new primary database.
The broker allows a complete failover to proceed as long as there are no errors
present on the standby database that you selected to participate in the failover.
The broker allows an immediate failover to proceed even if there are errors present on
the standby database that you selected to participate in the failover.
Reinstate the database using the DGMGRL REINSTATE DATABASE command or the
reinstate option in Cloud Control, as described in How to Reinstate a Database.
The broker automatically reenables the database as part of reinstating it.
• If a database must be re-created from a copy of the new primary database, it will
have the following status:
ORA-16795: the standby database needs to be re-created
Re-create the standby database from a copy of the primary database and then
reenable it, as described in How to Re-create and Reenable a Disabled Database.
5-14
Chapter 5
Manual Failover
Note:
Any database that was disabled while multiple role changes were performed
cannot be reinstated. You must re-create the database manually from a copy of
the current primary database and then reenable the database in the broker
configuration.
For the REINSTATE command to succeed, Flashback Database must have been enabled
on the database prior to the failover and there must be sufficient flashback logs on that
database. In addition, the database to be reinstated and the new primary database
must have network connectivity.
To reinstate a database:
1. Restart the database to the mounted state
2. Connect to the new primary database
3. Use Cloud Control or DGMGRL to reinstate the database
The broker reinstates a failed primary database as a standby database of the same
type (physical or logical standby database) as the old standby database. The only
exception to this is failovers to snapshot standby databases. In such cases, the failed
primary database is reinstated as a physical standby database.
The broker reinstates bystander standby databases that were disabled during a
failover as standby databases to the new primary database.
Reinstatement Using Cloud Control
On the Oracle Data Guard Overview page, click Database must be reinstated. This
brings up the General Properties page that provides a Reinstate button. After you
click the Reinstate button, Cloud Control begins reinstating the database.
5-15
Chapter 5
Fast-Start Failover
When the process is complete, the database will be enabled as a standby database to
the new primary database, and Cloud Control displays the Oracle Data Guard
Overview page.
Reinstatement Using DGMGRL
Issue the following command while connected to any database in the broker
configuration, except the database that is to be reinstated:
DGMGRL> REINSTATE DATABASE db_unique_name;
The newly reinstated standby database will begin serving as a standby database to
the new primary database. If reinstatement of a database fails, its status changes to
ORA-16795: the standby database needs to be re-created. You must then re-create it
from a copy of the new primary database and reenable it as described in How to Re-
create and Reenable a Disabled Database.
If you performed a failover or switchover that requires you to re-create the failed
primary database or standby databases that were disabled during the role transition,
then follow the procedures in the Oracle Data Guard Concepts and Administration
chapter, "Creating a Physical Standby Database" and also the Oracle Data Guard
Concepts and Administration chapter, "Creating a Logical Standby Database."
5-16
Chapter 5
Fast-Start Failover
maximum amount of data loss that is permissible in order for an automatic failover to
occur. It is only used when fast-start failover is enabled and the configuration is
operating in maximum performance mode.
Once fast-start failover is enabled, the broker will ensure that fast-start failover is only
possible when the configured data loss guarantee can be upheld. If the configured
data loss guarantee cannot be upheld, redo generation on the primary database will
be stalled. In maximum availability and maximum performance modes, to avoid a
prolonged stall, either the observer or target standby database may allow the primary
database to continue redo generation after first recording that a fast-start failover
cannot happen.
In maximum availability mode, the ability to automatically failover is restored once the
target standby database has received all missing redo data. In maximum performance
mode, the ability to automatically failover is restored once the target standby
database's redo applied point is no longer lagging the primary database's redo
generation point by more than the value specified by the FastStartFailoverLagLimit
configuration property. In maximum protection mode, the ability to automatically
failover is always possible because the broker does not allow the primary database to
commit transactions until it has regained connectivity with target standby. Therefore,
the target standby never falls behind the primary (as it might in maximum availability
and maximum performance modes).
The following table summarizes which standby types are supported in which protection
modes when fast-start failover is enabled. (Snapshot standbys are not included in the
table because they are not supported as fast-start failover targets.)
As shown in the table, fast-start failover can be enabled in maximum availability mode
when the fast-start failover target is a logical or physical standby database that
receives redo data from a far sync instance. This lets you take advantage of the
broker's automatic failover feature in configurations set up for zero data loss protection
at any distance. See Scenario 7: Enabling Fast-Start Failover When a Far Sync
Instance Is In Use for an example of how to set this up.
The topics in the following sections describe how to enable fast-start failover and
observer sites that monitor the fast-start failover environment. Observers are separate
OCI client-side components that run on a different computer from the primary and
standby databases and monitor the availability of the primary database. Observers are
described in more detail in Managing the Observer.
Once an observer is started, no further user interaction is required. If both the observer
and designated standby database lose connectivity with the primary database for
longer than the number of seconds specified by the FastStartFailoverThreshold
configuration property, the observer will initiate a fast-start failover to the standby
database. In addition, the primary database will shut down if it perceives a loss of
connectivity for a period longer than FastStartFailoverThreshold seconds, if the
5-17
Chapter 5
Fast-Start Failover
Note:
When a fast-start failover occurs because either a user configurable fast-start
failover condition is detected or an application initiates a fast-start failover by
calling the DBMS_DG.INITIATE_FS_FAILOVER function, the former primary database
is always shut down and never automatically reinstated. This is true regardless
of the settings for the FastStartFailoverPmyShutdown and
FastStartFailoverAutoReinstate configuration properties. See Enabling Fast-
Start Failover for more information.
Figure 5-1 shows the relationships between the primary database, target standby
database, and observer during fast-start failover:
• Before Fast-Start Failover: Oracle Data Guard is operating in a steady state, with
the primary database transmitting redo data to the target standby database and
the observer monitoring the state of the entire configuration.
• FastStart Failover Ensues: Disaster strikes the primary database and its network
connections to both the observer and the target standby database are lost. Upon
detecting the break in communication, the observer attempts to reestablish a
connection with the primary database for the amount of time defined by the
FastStartFailoverThreshold property before initiating a fast-start failover. If the
observer is unable to regain a connection to the primary database within the
specified time, and the target standby database is ready for fast-start failover, then
fast-start failover ensues.
• After Fast-Start Failover: The fast-start failover has completed and the target
standby database is running in the primary database role. After the former primary
database has been repaired, the observer reestablishes its connection to that
database and reinstates it as a new standby database. The new primary database
starts transmitting redo data to the new standby database.
5-18
Chapter 5
Fast-Start Failover
Figure 5-1 Relationship of Primary and Standby Databases and the Observer
5-19
Chapter 5
Fast-Start Failover
5-20
Chapter 5
Fast-Start Failover
Note:
To change the FastStartFailoverTarget property to point to a different
standby database, disable fast-start failover, set the
FastStartFailoverTarget property, and reenable fast-start failover.
5-21
Chapter 5
Fast-Start Failover
Alternatively, use the RedoRoutes property to set the redo transport mode for the target
standby and database that is currently in the primary role. Then set the configuration
protection mode to maximum availability.
If you are more concerned about the performance of the primary database than a
minimal loss of data, consider enabling fast-start failover when the configuration
protection mode is set to maximum performance. In this mode you will need to
consider how much data loss is acceptable in terms of seconds and set the
FastStartFailoverLagLimit configuration property accordingly. This property specifies
the amount of data, in seconds, that the target standby database can lag behind the
primary database in terms of redo applied. If the standby database's redo applied point
is within that many seconds of the primary database's redo generation point, a fast-
start failover will be allowed. The FastStartFailoverLagLimit configuration property is
only used by the broker when enabling fast-start failover for configurations operating in
maximum performance mode. The default value is 30 seconds and the lowest possible
value is 5 seconds.
In addition to setting the configuration protection mode to maximum performance, you
will also need to ensure that the LogXptMode database property for both the primary and
target standby database is set to ASYNC. For example:
DGMGRL> EDIT DATABASE 'North_Sales' SET PROPERTY LogXptMode=ASYNC;
DGMGRL> EDIT DATABASE 'South_Sales' SET PROPERTY LogXptMode=ASYNC;
DGMGRL> EDIT CONFIGURATION SET PROTECTION MODE AS MaxPerformance;
DGMGRL> EDIT CONFIGURATION SET PROPERTY FastStartFailoverLagLimit=45;
The default value for the FastStartFailoverThreshold property is 30 seconds and the
lowest possible value is 6 seconds. If you have an Oracle RAC primary database,
consider specifying a higher value to minimize the possibility of a false failover in the
event of an instance failure.
The time interval starts when the observer first loses its connection to the primary
database. If the observer is unable to regain a connection to the primary database
within the specified time, then the observer begins a fast-start failover provided the
standby database is ready to fail over. Although the default value of 30 seconds is
typically adequate for detecting outages and failures on most configurations, you can
adjust failover sensitivity with this property to decrease the probability of false failovers
in a temporarily unstable environment.
5-22
Chapter 5
Fast-Start Failover
See Also:
FastStartFailoverThreshold for reference information about the
FastStartFailoverThreshold property
5-23
Chapter 5
Fast-Start Failover
5-24
Chapter 5
Fast-Start Failover
In Oracle RAC configurations, the Inaccessible Logfile and Stuck Archiver health
conditions may only be applicable to a single instance. Careful consideration should
be given before enabling fast-start failover for either of these conditions because doing
so will supersede availability options provided by Oracle Clusterware.
You can specify particular conditions for which a fast-start failover should occur using
either Cloud Control or the DGMGRL ENABLE FAST_START FAILOVER CONDITION and
DISABLE FAST_START FAILOVER CONDITION commands.
To enable fast-start failover, both the primary and target standby databases must be
running and have connectivity, and satisfy all of the prerequisite conditions listed in
Prerequisites for Enabling Fast-Start Failover.
Note:
The Cloud Control Fast-Start Failover wizard does not currently support
specification of multiple targets. If you want to specify multiple targets, then you
must use the DGMGRL utility.
5-25
Chapter 5
Fast-Start Failover
To enable fast-start failover in Cloud Control, use the Fast-Start Failover wizard. On
the Oracle Data Guard Overview page next to the Fast-Start Failover status field, click
Disabled to invoke the Fast-Start Failover page. Then, on the Fast-Start Failover
Change Mode page, click Enabled. Cloud Control will start the observer. Then, on the
Fast-Start Failover Configure page, select the standby database that should be the
target of a failover. See Choosing a Target Standby Database for helpful advice. This
page will not allow you to alter the protection mode. Rather, fast-start failover will be
enabled in accordance with the current protection mode. If the currently configured
mode is maximum protection, Cloud Control will downgrade the mode to maximum
availability.
Enable Fast-Start Failover Using DGMGRL
To enable fast-start failover with DGMGRL, issue the ENABLE FAST_START FAILOVER
command while connected to any database in the broker configuration, including on
the observer computer. For example:
DGMGRL> ENABLE FAST_START FAILOVER;
Enabled.
See Also:
Note:
Administration at the target standby site should be as comprehensive as that at
the primary site because the standby database may assume the primary role
without prior notice. Staff support, hardware and software, security (both
software and site), network connections, and bandwidth should be equivalent at
both sites.
5-26
Chapter 5
Fast-Start Failover
To start the observer with DGMGRL, issue the following command on the observer
computer:
DGMGRL> START OBSERVER;
The observer is a continuously executing process that is created when the START
OBSERVER command is issued. Thus, the command-line prompt on the observer
computer does not return until you issue the STOP OBSERVER command from another
DGMGRL session. To issue commands and interact with the broker configuration, you
must connect through another DGMGRL client session.
There can be up to three observers for a single Data Guard configuration. One is the
master observer and the others are backup observers.
Starting the Observer as a Background Process Using DGMGRL
To start an observer as a background process, use the DGMGRL command START
OBSERVER IN BACKGROUND. If this command is submitted successfully, the command-line
prompt on the observer computer is returned to you so that you can continue to issue
commands and interact with the broker configuration. This is the preferred method for
starting an observer.
• See Installing and Starting the Observer.
• See Managing the Observer
• See the START OBSERVER command for more information about starting the
observer as a foreground process.
• See START OBSERVER IN BACKGROUND for more information about starting
the observer as a background process.
5-27
Chapter 5
Fast-Start Failover
The following sections provide more information about the fast-start failover
environment:
• When Fast-Start Failover Is Enabled and the Observer Is Running
• Restrictions When Fast-Start Failover is Enabled
• Shutting Down the Primary Database When Fast-Start Failover Is Enabled
• Performing Manual Role Changes When Fast-Start Failover Is Enabled
The master observer never waits for the threshold to expire to perform a fast-start
failover in the following situations:
• User-configurable condition
If the master observer determines that any of the user-configurable conditions
has been detected, then it attempts a fast-start failover.
• Application calls to DBMS_DG.INITIATE_FS_FAILOVER
If an application has called this function and it has received a status of SUCCESS,
then the master observer attempts a fast-start failover.
2. Reconnect within the time specified by the FastStartFailoverThreshold property.
5-28
Chapter 5
Fast-Start Failover
If the master observer detects an availability problem with the primary database,
then it typically attempts to reconnect to the primary database within the time
specified by the FastStartFailoverThreshold configuration property. The
FastStartFailoverThreshold time interval starts when the observer first detects
there might be a failure with the primary database.
The time interval specified by the FastStartFailoverThreshold property is ignored if
the master observer detects that a user-configurable condition has occurred or if a
fast-start failover has been requested by the DBMS_DG.INITIATE_FS_FAILOVER
function.
If the primary database is an Oracle Real Application Clusters (Oracle RAC)
database, the master observer will attempt to connect to one of the remaining
primary instances. Fast-start failover will not occur unless all instances comprising
the Oracle RAC primary database are perceived to have failed. The master
observer uses the value specified by either the DGConnectIdentifier or
ObserverConnectIdentifier database properties to connect to the primary and fast-
start failover target standby databases. The value specified for either of these
properties should allow the master observer to connect to any instance of an
Oracle RAC database.
3. Verify the target standby database is ready for failover.
If fast-start failover is initiated, the master observer verifies the target standby
database is ready to fail over to the primary database role.
Fast-start failover cannot occur if:
• Fast-start failover is no longer enabled
• The master observer cannot connect to the target standby database
See Also:
What Happens if the Observer Fails? if the observer is not running
• The master observer and the target standby database are inconsistent with
regard to the current state of the broker configuration
• The master observer is not running
• If the protection mode is maximum availability or maximum protection and the
target standby database was not synchronized with the primary database at
the time the primary database failed
• If the protection mode is maximum performance and the apply point of the
target standby database lags the redo generation point of the primary
database by more than the amount specified by the FastStartFailoverLagLimit
configuration property at the time the primary database failed
• The target standby database has contact with the primary database. However,
failover is attempted if the ObserverOverride configuration property is set to
TRUE.
• The FS_FAILOVER_STATUS column in the V$DATABASE view for the target standby
database displays a reason why fast-start failover cannot occur
• A manual failover is already in progress. See Manual Failover for complete
information about manual failovers.
5-29
Chapter 5
Fast-Start Failover
• The primary database was shut down without using the ABORT option
4. Initiate a fast-start failover.
If the target standby database is ready for failover, then the master observer
immediately directs the target standby database to fail over to the primary
database role. If failover is not possible for some reason, then the master observer
will continue checking whether the standby database is ready to fail over. But it will
also continue trying to reconnect to the primary database indefinitely. If it
reconnects to the primary database before the standby agrees to fail over, then
the master observer will stop attempting to initiate a fast-start failover.
5. Reinstate the former primary database as a new standby database.
After the fast-start failover completes successfully, the master observer will
attempt to reinstate the former primary database as a new standby database when
a connection to the former primary database is reestablished, and the
FastStartFailoverAutoReinstate configuration property is set to TRUE. If the
FastStartFailoverPmyShutdown configuration property is set to TRUE, then the former
primary database will have been automatically shut down and must be manually
restarted before the master observer can attempt to reinstate it.
Note that these properties only affect whether primary shutdown and automatic
reinstatement are performed if a fast-start failover occurs because the primary
crashed or was isolated from the observer and target standby database.
See Also:
Reinstating the Former Primary Database in the Broker Configuration for
more information about reinstatement
5-30
Chapter 5
Fast-Start Failover
– A far sync instance if it is being used to receive redo from the primary
database and ship redo to the target standby database
• Perform a manual failover:
– Unless the conditions listed in Performing Manual Role Changes When Fast-
Start Failover Is Enabled have been met
– To a standby database that is not configured as the fast-start failover target
To determine if the configuration is ready for fast-start failover to occur, issue
the DGMGRL SHOW DATABASE <target-standby-database> command, or query
the V$DATABASE view on either the primary or target standby databases. The
column value for V$DATABASE.FS_FAILOVER_STATUS will be SYNCHRONIZED in a
configuration operating in maximum availability mode, and it will be TARGET
UNDER LAG LIMIT in a configuration operating in maximum performance mode
when ready to fast-start failover. The FS_FAILOVER_OBSERVER_PRESENT column
displays YES for the target standby database.
• Perform a switchover to a standby database that is not configured as the fast-start
failover target
• Perform a switchover to the target standby database in a configuration operating in
maximum availability mode, unless the standby database is synchronized with the
primary database
• Perform a switchover to the target standby database in a configuration operating in
maximum performance mode, unless the standby database is within the lag limit of
the primary database
• Attempt to open the primary database, or the following error may be returned:
ORA-16649: possible failover to another database prevents this database from
being opened
This error may return if the fast-start failover validity check fails or does not
complete in under two minutes.
• Use the SQL ALTER DATABASE MOVE DATAFILE command to rename or relocate an
online data file on a physical standby that is a fast-start failover target if the
standby is mounted, but not open.
5-31
Chapter 5
Fast-Start Failover
• The role change is directed to the same standby database that was specified for
the FastStartFailoverTarget database property on the primary database.
• The target standby database is synchronized with the primary database if it is a
configuration operating in maximum availability or maximum protection mode, or
the target standby database is within the lag limit if it is a configuration operating in
maximum performance mode.
• For manual failover, the observer is started and communicating with the target
standby database. You must ensure that the primary database is shut down prior
to performing a manual failover.
Note:
You can disable fast-start failover if necessary, by using the FORCE option. See
Disabling Fast-Start Failover.
See Also:
Switchover and Manual Failover for more information about switchovers and
manual failovers, respectively
Note:
An application should use caution when calling the
DBMS_DG.INITIATE_FS_FAILOVER function because the observer will initiate
failover, if at all possible.
5-32
Chapter 5
Fast-Start Failover
See Also:
Oracle Database PL/SQL Packages and Types Reference for more information
about the DBMS_DG package
Alternatively, you can query the V$DATABASE view on the target standby database.
You can also query the V$FS_FAILOVER_STATS view to display statistics about fast-start
failover occurring on the system.
The rest of this section provides examples of using DGMGRL SHOW commands to
display fast-start failover information and includes sections describing the following
views:
• V$DATABASE View
• V$FS_FAILOVER_STATS View
5-33
Chapter 5
Fast-Start Failover
Properties:
FastStartFailoverThreshold = '60'
OperationTimeout = '30'
TraceLevel = 'USER'
FastStartFailoverLagLimit = '30'
CommunicationTimeout = '180'
ObserverReconnect = '0'
FastStartFailoverAutoReinstate = 'TRUE'
FastStartFailoverPmyShutdown = 'TRUE'
BystandersFollowRoleChange = 'ALL'
ObserverOverride = 'FALSE'
ExternalDestination1 = ''
ExternalDestination2 = ''
PrimaryLostWriteAction = 'CONTINUE'
ConfigurationWideServiceName = 'North_Sales_CFG'
Threshold: 30 seconds
Target: South_Sales
Observer: observer.example.com
Lag Limit: 30 seconds (not in use)
Shutdown Primary: TRUE
Auto-reinstate: TRUE
Observer Reconnect: (none)
Observer Override: FALSE
Configuration Status:
SUCCESS
Configuration - DRSolution
Primary: North_Sales
Active Target Standby: South_Sales
5-34
Chapter 5
Fast-Start Failover
5-35
Chapter 5
Fast-Start Failover
5-36
Chapter 5
Fast-Start Failover
• LAST_FAILOVER_REASON that shows the reason for the last fast-start failover
LAST_FAILOVER_TIME
--------------------
LAST_FAILOVER_REASON
-------------------------------------------------------------------------------------
-----------------------------------------------
02/13/2007 16:53:10
Primary Disconnected
Note:
Disabling fast-start failover does not stop the observer. To stop the observer,
see Stopping the Observer.
To disable fast-start failover, use the Fast-Start Failover wizard in Cloud Control or the
DGMGRL DISABLE FAST_START FAILOVER [FORCE] command. The FORCE option disables
fast-start failover on the database to which you are connected even when errors occur.
Whether or not you need the FORCE option depends mostly on if the primary and target
standby database have network connectivity:
5-37
Chapter 5
Fast-Start Failover
• If the primary and target standby database have network connectivity, and the
database to which you are connected has network connectivity with the primary
database, the FORCE option has no effect. Simply use DISABLE FAST_START FAILOVER.
This method will disable fast-start failover on all databases in the broker
configuration.
If errors occur during the disable operation, the broker returns an error message
and stops the disable operation.
• If the primary and target standby databases do not have network connectivity or if
the database to which you are connected does not have network connectivity with
the primary database, consider using DISABLE FAST_START FAILOVER with the FORCE
option.
The broker may not be able to disable fast-start failover on all databases in the
broker configuration when you issue the DISABLE FAST_START FAILOVER FORCE
command. As a result, there is no guarantee that the observer will not perform a
fast-start failover to the target standby database if the observer determines that
conditions warrant a failover. The following list indicates the extent to which fast-
start failover is disabled in the broker configuration when the DISABLE FAST_START
FAILOVER FORCE command is issued on the primary database, target standby
database, and a standby database that is not the fast-start failover target.
If you issue this command on:
– The target standby database when it does not have connectivity with the
primary database, fast-start failover is disabled only on the target standby
database. In this case, the observer cannot perform a fast-start failover even if
conditions warrant a failover. Disabling fast-start failover with the FORCE option
when connected to the target standby database guarantees that fast-start
failover will not occur.
When the primary database and the target standby database regain network
connectivity, the broker will disable fast-start failover for the entire broker
configuration.
– The primary database, it attempts to disable fast-start failover on as many
databases in the configuration with which it has a network connection. If the
primary database does not have connectivity with the target standby database,
fast-start failover remains enabled on the target standby database and the
observer may still attempt a fast-start failover if conditions warrant a failover.
Caution:
This action may result in two databases in the configuration
simultaneously assuming the primary database role should fast-start
failover occur. For this reason, you should first issue this command on
the target standby database.
– Another standby database that does not have connectivity with the primary
database, fast-start failover is disabled for this database. Because fast-start
failover was not disabled on the target standby database, the observer may
still attempt a fast-start failover to the target standby database should
conditions warrant a failover.
5-38
Chapter 5
Fast-Start Failover
When the primary database and the (non-target) standby database regain
network connectivity, the broker will propagate its current fast-start failover
setting (ENABLED or DISABLED) to the non-target standby.
Caution:
When you are experiencing network disconnections and you issue the
DISABLE FAST_START FAILOVER FORCE command on the primary database
or a standby database that does not have connectivity with the primary
database, fast-start failover may not be disabled for all databases in
the broker configuration. As a result the observer may still initiate fast-
start failover to the target standby database, if conditions warrant a
failover. This may result in two databases in the configuration
simultaneously assuming the primary database role.
• A network outage isolates the primary database from the observer and the target
standby database before conditions exist that warrant a failover.
In this case, the primary database stalls and prevents any further transactions
from committing because a fast-start failover may have occurred while it was
isolated. If you expect the network to be disconnected for a long time and you
need to make the primary database available, first confirm that a fast-start failover
has not occurred to the target standby database. Then, disable fast-start failover
with the FORCE option on the primary database.If possible, confirm that fast-start
failover has not occurred to the target standby database prior to disabling fast-start
failover with the FORCE option on the primary database.
Caution:
This action may result in two databases in the configuration simultaneously
assuming the primary database role. This can be avoided by first disabling
fast-start failover with the FORCE option on the target standby.
5-39
Chapter 5
Fast-Start Failover
In this case fast-start failover cannot occur because the databases are not ready
to failover. You cannot perform a manual failover to the target standby database
for the same reason. To proceed, you must first disable fast-start failover using the
FORCE option, and then perform a manual failover.
Caution:
This action will result in loss of data and the possibility of two databases in
the configuration simultaneously assuming the primary database role. This
can be avoided by first disabling fast-start failover with the FORCE option on
the target standby.
5-40
Chapter 5
Fast-Start Failover
5-41
Chapter 5
Fast-Start Failover
See Also:
Note:
Oracle Enterprise Manager Cloud Control (Cloud Control) does not support
multiple observers.
You can register up to three observers to monitor a single Data Guard broker
configuration. Each observer is identified by a name that you supply when you issue
the START OBSERVER command. The following conditions apply when multiple observers
are registered for one configuration:
5-42
Chapter 5
Fast-Start Failover
• When fast-start failover is enabled, one of the observers is the master observer.
The remaining observers are called backup observers. When fast-start failover is
disabled, no observer is called the master observer; all observers have the same
functionality.
• No two observers on the same Data Guard Broker configuration can have the
same name.
• If no name is specified for the observer then a default observer name, the host
name of machine where the START OBSERVER command is issued, is used.
• An observer name is case-insensitive.
• The string "NONAME" cannot be used as an observer name.
• Each observer has its own log file. The log file name is specified with the LOGFILE
IS option of the START OBSERVER command. If the specified log file is not accessible,
or the LOGFILE IS option is not used, then the observer output is sent to standard
output.
• Except for testing purposes, it is not recommended that you start more than one
observer on the same host for a Data Guard broker configuration.
• The command SHOW FAST_START FAILOVER shows a list of registered observers and
indicates which one is the master.
• The command SHOW OBSERVER provides detailed information about registered
observers.
Note:
The master observer works in the same manner that a single observer worked
prior to the advent of multiple observers in Oracle Database 12c Release 2
(12.2.0.1).
The observer does not need to coordinate fast-start failover when fast-start failover is
disabled, so the primary and target standby do not nominate a master observer until
fast-start failover is enabled. When fast-start failover is enabled, the primary and
standby randomly choose one of the registered observers to be the master. If there
are no registered observers when fast-start failover is enabled, then the first observer
started is designated as the master observer, and all others started later are backup
observers. Only the master observer can coordinate fast-start failover with Data Guard
broker. All other registered observers are considered to be backup observers.
When this command is issued, the actual switch does not happen until the next time
the primary contacts the target standby, usually within three seconds if fast-start
failover is enabled. You can issue a SHOW OBSERVER command to confirm that the switch
took place. For more information, see SET MASTEROBSERVER TO.
5-43
Chapter 5
Fast-Start Failover
DGMGRL>
The START OBSERVER IN BACKGROUND command uses Oracle wallet to obtain credentials
to log into the database server and register observers. Even if you have successfully
connected to a database server in the broker configuration using the CONNECT
command, this command ignores the existing connection and uses the credentials
stored in Oracle wallet. For more information, see START OBSERVER IN
BACKGROUND.
% dgmgrl
DGMGRL> CONNECT /@primary2;
DGMGRL> START OBSERVER FILE IS '/u01/oracle/dbs/config2.dat'
LOGFILE IS '/u01/oracle/log/config2.log'
Note:
The DGMGRL -logfile option is deprecated as of Oracle Database 12c
Release 2 (12.2.0.1). It is supported for backward compatibility only. Instead,
the log file should now be specified using the LOGFILE IS clause on the START
OBSERVER command.
5-44
Chapter 5
Fast-Start Failover
In the following example, assume the network between the primary database and the
observer has failed. In this case, the FS_FAILOVER_STATUS and
FS_FAILOVER_OBSERVER_PRESENT columns will appear as shown in the following table and
fast-start failover will not occur:
See Also:
5-45
Chapter 5
Fast-Start Failover
For each observer, the V$FS_FAILOVER_OBSERVERS view provides the observer name,
host, whether it is the master observer, when it became the master observer, and
whether it is currently connected to the primary and target standby databases.
See Also:
While the configuration is in the unobserved state, fast-start failover cannot happen.
Therefore, the primary database can continue processing transactions, even if the
target standby database fails. The configuration status returns the SUCCESS status after
the observer reestablishes its connection to the primary database, which then notifies
the target standby database.
See Also:
Viewing Fast-Start Failover Configuration Statistics and Status
5-46
Chapter 5
Fast-Start Failover
Note:
During the period when a new master observer is being identified, a fast-start
failover cannot occur until the new master observer is selected and observing
the configuration.
If the primary or target standby databases lose connections to all backup observers,
then the broker does not try to nominate a backup observer as the new master
observer, and the broker reports that the configuration is not observed. The
configuration and database status report the same error messages as are returned
when there is only one registered observer.
Ordinarily the observer connects once to the primary and does not attempt to
reconnect unless the connection has failed. However, if you want the observer to
reconnect to the primary database periodically as a means of testing the health of the
network connection to the primary, then use the ObserverReconnect configuration
property. This specifies how often the observer establishes a new connection to the
primary database. In the following example, ObserverReconnect is set to 30 seconds.
This results in the observer establishing a new connection to the primary database
every 30 seconds.
DGMGRL> EDIT CONFIGURATION SET PROPERTY ObserverReconnect=30;
5-47
Chapter 5
Fast-Start Failover
• To stop the observer when fast-start failover is enabled, the primary database and
target standby database must be connected and communicating with each other. If
they are isolated from each other, then you must first disable fast-start failover by
using the FORCE option, and then stop the observer. (See Disabling Fast-Start
Failover for important considerations when using the FORCE option.)
You can log into DGMGRL from any machine to stop an observer. For instance, you
could log into the system running observer1 to stop observer2.
In an environment where there are multiple observers configured, stopping the master
observer is not allowed unless it is the last running observer. To stop an observer
currently designated as the master observer, first issue the SET MASTEROBSERVER
command to designate a different observer as master observer. Then the STOP
OBSERVER command can be issued successfully on the former master observer.
If there is more than one registered observer, then this command returns an error;
a name is required if there is more than one observer.
Note:
See the STOP OBSERVER command for more information.
5-48
Chapter 5
Fast-Start Failover
Note:
If the observer is stopped abnormally (for example, by typing CTRL/C), restart it
and reference the existing fsfo.dat file with the FILE IS qualifier.
5-49
Chapter 5
Fast-Start Failover
5-50
Chapter 5
Fast-Start Failover
• The group definition section is optional. If groups are not defined, you can still
operate on all configurations defined in the file as a whole.
• The word ALL cannot be used as a group name because it is a reserved keyword.
• Duplicate group names are not allowed.
• Each group that you define must have at least one broker configuration.
• Any broker configuration name that is referred to must exist in the configuration
declaration section.
• A broker configuration can belong to multiple groups.
5-51
Chapter 5
Fast-Start Failover
See Also:
Since the broker configuration SALES consists of three databases, Boston, Chicago, and
Dallas, with a CONNECT_ID of SALES_P, the SALES_P connect identifier must be defined
such that it can reach any instance of any database within the configuration. The new
ConfigurationWideServiceName configuration property can be used to simplify setting up
this connect identifier. Data Guard broker publishes this service on each instance as it
comes up and broker management of the instance is initialized:
SALES_P = (DESCRIPTION =
(ADDRESS_LIST =
5-52
Chapter 5
Fast-Start Failover
(ADDRESS=(PROTOCOL=TCP)(HOST=boston-cluster)(PORT = 1521))
(ADDRESS=(PROTOCOL=TCP)(HOST=chicago-cluster)(PORT = 1521))
(ADDRESS=(PROTOCOL=TCP)(HOST=dallas-cluster)(PORT = 1521)))
(CONNECT_DATA=(SERVER=DEDICATED)
(SERVICE_NAME=cfgSvc.us.example.com)))
Note:
It is not necessary to disable fast-start failover if there are only backup
observers, but no master observer, running in the environment to be
patched.
After the patch has been successfully applied to all databases, take the following steps
to enable fast-start failover and start the observer.
1. Enable fast-start failover using the DGMGRL ENABLE FAST_START FAILOVER
command. The primary and target standby must have connectivity for this
command to complete successfully.
2. Start the observer using the DGMGRL START OBSERVER command. If the
configuration has multiple observers, then be sure to specify the name of the
observer whose environment has just been patched (START OBSERVER observer-
name).
5-53
Chapter 5
Fast-Start Failover
To allow the master observer to automatically reinstate the former primary database,
the database must be started and mounted. It will not be allowed to open in any event
if fast-start failover is enabled. The broker reinstates the database as a standby
database of the same type as the former standby database of the new primary
database.
If the former primary database cannot be reinstated automatically, you can manually
reinstate it using either the DGMGRL REINSTATE command or Cloud Control. Step-by-
step instructions for manual reinstatement are described in Reenabling Disabled
Databases After a Role Change.
5.5.8.1 Requirements
Reinstatement is supported only after failover in a broker configuration. It also requires
Flashback Database to be enabled on both the primary and target standby databases.
Prerequisites for Enabling Fast-Start Failover provides complete information about all
of the fast-start failover and reinstatement requirements.
• Another failover or switchover occurred after the fast-start failover completed but
before the former primary database restarted
• Fast-start failover was disabled
• The master observer cannot connect to the former primary database
• The former primary database cannot connect to the new primary database
• The former primary database and the new primary database are not configured in
the same fast-start failover environment
• The former primary database was disabled because of a manual failover when
fast-start failover was disabled
Note:
Standby databases that are disabled during switchover, manual failover, or
fast-start failover will not be automatically reinstated.
If automatic reinstatement fails, the broker will log errors and the former primary
database will remain in the mounted state. At this point, you can either:
• Disable fast-start failover (described in Disabling Fast-Start Failover) and attempt
to open the former primary database
• Manually reinstate the former primary database, as described in Reenabling
Disabled Databases After a Role Change
5-54
Chapter 5
Database Client Considerations
See Also:
How to Re-create and Reenable a Disabled Database
5-55
Chapter 5
Database Client Considerations
• JAVA applications can use FAN programmatically by using the JDBC FAN
application programming interface to subscribe to FAN events and to execute
event handling actions upon the receipt of an event.
• FAN server-side callouts can be configured on the database tier.
FAN events are published using Oracle Notification Services (ONS) for all Oracle
integrated database clients in Oracle Database 12c and later. In previous releases,
OCI and ODP.NET clients receive FAN notifications via Oracle Advanced Queuing
(AQ).
Note:
A single-instance database must be registered with Oracle Restart in order to
publish FAN events via ONS.
See Also:
5-56
Chapter 5
Database Client Considerations
For example:
sales =
(DESCRIPTION=
(FAILOVER=ON)
(CONNECT_TIMEOUT=5)
(ADDRESS_LIST=
(ADDRESS=(HOST=boston-scan)(PORT=1521))
(ADDRESS=(HOST=dallas-scan)(PORT=1521)))
(CONNECT_DATA=(SERVICE_NAME=sales)))
2. Configure the connect descriptor with a single network name that is registered with
a global naming service such as DNS or LDAP. Create a trigger based on the
DB_ROLE_CHANGE system event that changes the network address associated with
the network name to the network address of the new primary database after a
failover.
See Also:
The connect descriptor must contain the SERVICE_NAME parameter in either case.
5-57
Chapter 5
Database Client Considerations
Note:
The examples shown in this section do not necessarily show the specific
attributes you might need to use in your own environment. The required
attributes vary depending on your configuration (including whether your
environment is Oracle RAC-based or single-instance). Refer to the appropriate
Oracle RAC or Oracle Restart documentation for further information.
Services that are to be active while the database is in the physical standby role must
also be created and started on the current primary database regardless of whether the
service will be started on that database or not. This is to ensure that the service
definition gets propagated to the physical standby database via the redo stream and
thus allows for the service to be started on the physical standby database. The service
can be started on the physical standby only after the redo generated by starting the
service has been applied. It is important that all SRVCTL add service options be
identical on all the databases so that the services behave the same way before and
after a role change.
If all the databases do not have the same values, SRVCTL attempts to override the
values, which will fail on the physical standby database because it is open read-only.
In the following example, a service named sales is configured to be active in the
PHYSICAL_STANDBY role on the primary database NORTH. It is then started and stopped on
the primary database. It could optionally also be removed from the primary database if
there is no intention to ever run this service on the current primary database. It is then
configured to be active in the PHYSICAL_STANDBY role on the physical standby database
SOUTH.
If the broker now performs a switchover or failover, it automatically starts the SALES
service on the correct database, based on the database's role.
The previous examples dealt with setting up only one service on a database. The
following example shows you how to set up more than one service on a database and
how using the broker ensures that the correct service starts on the correct database.
5-58
Chapter 5
Database Client Considerations
Suppose you have a primary database, BOSTON, and a standby database, CHICAGO.
Issue the following SRVCTL commands so that both databases in the Data Guard
configuration know about the two potential services for each database:
On BOSTON
srvctl add service -db BOSTON -service SALESRW -role PRIMARY -y AUTOMATIC
srvctl add service -db BOSTON -service SALESRO -role PHYSICAL_STANDBY -policy
AUTOMATIC
On CHICAGO:
srvctl add service -db CHICAGO -s SALESRW -role PRIMARY -y AUTOMATIC
srvctl add service -db CHICAGO -s SALESRO -role PHYSICAL_STANDBY -policy AUTOMATIC
To start things up initially, you must manually start the services on the right node. You
must also start and stop the SALESRO service on the primary so that it can be started on
the standby. Issue the following SRVCTL commands:
On BOSTON:
srvctl start service -db BOSTON -service SALESRW
srvctl start service -db BOSTON -service SALESRO
srvctl stop service -db BOSTON -service SALESRO
On CHICAGO:
srvctl start service -db CHICAGO -service SALESRO
On CHICAGO:
srvctl start service -db BOSTON
The SRVCTL utility does not automatically take the database role into account, so any
time you start a service manually, you must specify the name(s) of the service you
want started.
5-59
Chapter 5
Database Client Considerations
Note:
If the service has been configured to start automatically (-policy AUTOMATIC),
then the service will automatically start only after a database role change.
Note:
In an Oracle Data Guard configuration, the SRVCTL -startoption for a standby
database is always set to OPEN after a switchover.
See Also:
See Also:
5-60
6
Scenarios Using the DGMGRL Command-
Line Interface
Use these scenarios to help you understand what you need to do to start creating,
managing, and using an Oracle Data Guard broker configuration.
Read the information about prerequisites for getting started using the Oracle Data
Guard command-line interface (DGMGRL), so that you can prepare your instances.
Then read the scenarios to understand how you can use DGMGRL to create, manage,
and monitor a broker configuration.
• Prerequisites for Getting Started
• Scenario 1: Creating a Configuration
• Scenario 2: Setting Database Properties
• Scenario 3: Enabling the Configuration and Databases
• Scenario 4: Setting the Configuration Protection Mode
• Scenario 5: Setting up Maximum Availability Mode with a Far Sync Instance
• Scenario 6: Enabling Fast-Start Failover and Starting the Observer
• Scenario 7: Enabling Fast-Start Failover When a Far Sync Instance Is In Use
• Scenario 8: Performing Routine Management Tasks
• Scenario 9: Performing a Switchover Operation
• Scenario 10: Performing a Manual Failover Operation
• Scenario 11: Reinstating a Failed Primary Database
• Scenario 12: Converting a Physical Standby to a Snapshot Standby
• Scenario 13: Monitoring a Data Guard Configuration
• Scenario 14: Adding a Recovery Appliance to a Broker Configuration
If an instance was not started with a server parameter file, then you must shut down
the instance and restart it using the server parameter file.
6-1
Chapter 6
Scenario 1: Creating a Configuration
After starting the Oracle instance, set the DG_BROKER_START=TRUE initialization parameter
using the SQL ALTER SYSTEM statement. The parameter value will be saved in the
server parameter file. The next time you start the Oracle instance, the broker is started
automatically, and you do not need to issue the SQL ALTER SYSTEM statement again.
To create a configuration and add one physical standby database, perform the
following tasks:
• Creating a Configuration Task 1: Invoke DGMGRL
• Creating a Configuration Task 2: Connect to the Primary Database
• Creating a Configuration Task 3: Clear Existing Remote Redo Transport
Destinations
• Creating a Configuration Task 4: Create the Broker Configuration
• Creating a Configuration Task 5: Show the Configuration Information
• Creating a Configuration Task 6: Add a Standby Database to the Configuration
6-2
Chapter 6
Scenario 1: Creating a Configuration
The account from which you connect to the database (SYS in this example) must have
SYSDG or SYSDBA privileges on the primary and standby databases.
Note:
If no AS clause is specified on the CONNECT command, the connection is made as
SYSDBA.
The following examples show two variations of the CONNECT command. Example 6-1
shows how to connect to the default database on the local system, and Example 6-2
includes the Oracle Net Services connect identifier (North_Sales.example.com) to make
a connection to a database located on a remote system. In both examples, you are
prompted for a password.
Example 6-1 Connecting to the Primary Database on the Local System
DGMGRL> CONNECT sysdg;
Password: password
Connected to "North_Sales"
Connected as SYSDG.
Failed.
To clear LOG_ARCHIVE_DEST_n settings, use the ALTER SYSTEM SET LOG_ARCHIVE_DEST_n=" "
SQL*Plus command.
6-3
Chapter 6
Scenario 1: Creating a Configuration
Remote redo transport destinations on the primary (whether they have the REGISTER or
NOREGISTER attribute) can be left as is.
Note:
The names for the primary and standby databases must match their database
unique names. Fetch these from their DB_UNIQUE_NAME initialization parameter as
follows:
SQL> SHOW PARAMETER DB_UNIQUE_NAME;
Use the CREATE CONFIGURATION command to create the DRSolution configuration and
define the primary database, North_Sales:
DGMGRL> CREATE CONFIGURATION 'DRSolution' AS
> PRIMARY DATABASE IS 'North_Sales'
> CONNECT IDENTIFIER IS North_Sales.example.com;
Configuration Status:
DISABLED
6-4
Chapter 6
Scenario 2: Setting Database Properties
Configuration Status:
DISABLED
DGMGRL>
Use the SHOW DATABASE VERBOSE command to view all properties and their values for a
database. The following example shows the properties for the South_Sales database.
6-5
Chapter 6
Scenario 2: Setting Database Properties
Database - South_Sales
Properties:
DGConnectIdentifier = 'South_Sales.example.com'
ObserverConnectIdentifier = ''
LogXptMode = 'ASYNC'
RedoRoutes = ''
DelayMins = '0'
Binding = 'OPTIONAL'
MaxFailure = '0'
MaxConnections = '1'
ReopenSecs = '300'
NetTimeout = '30'
RedoCompression = 'DISABLE'
LogShipping = 'ON'
PreferredApplyInstance = ''
ApplyInstanceTimeout = '0'
ApplyLagThreshold = '0'
TransportLagThreshold = '0'
TransportDisconnectedThreshold = '0'
ApplyParallel = 'AUTO'
ApplyInstances = '0'
StandbyFileManagement = 'AUTO'
ArchiveLagTarget = '0'
LogArchiveMaxProcesses = '5'
LogArchiveMinSucceedDest = '1'
DataGuardSyncLatency = '0'
DbFileNameConvert = 'dbs/cdb1_, dbs/cdb2_, dbs/t, dbs/bt, dbs/
cdb4_, dbs/cdb2_, dbs/dt, dbs/bt'
LogFileNameConvert = 'dbs/cdb1_, dbs/cdb2_, dbs/t, dbs/bt, dbs/
cdb4_, dbs/cdb2_, dbs/dt, dbs/bt'
FastStartFailoverTarget = ''
InconsistentProperties = '(monitor)'
InconsistentLogXptProps = '(monitor)'
SendQEntries = '(monitor)'
LogXptStatus = '(monitor)'
RecvQEntries = '(monitor)'
PreferredObserverHosts = ''
StaticConnectIdentifier = '(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)
(HOST=south_sales1.example.com)(PORT=2879))
(CONNECT_DATA=(SERVICE_NAME=South_Sales_DGMGRL.example.com)
(INSTANCE_NAME=south_sales1)(SERVER=DEDICATED)))'
StandbyArchiveLocation = 'USE_DB_RECOVERY_FILE_DEST'
StandbyAlternateLocation = ''
LogArchiveTrace = '255'
LogArchiveFormat = 'db2r_%d_%t_%s_%R.arc'
TopWaitEvents = '(monitor)'
6-6
Chapter 6
Scenario 3: Enabling the Configuration and Databases
Database Status:
DISABLED
Note:
The database properties are typically displayed in mixed-case (for example,
LogArchiveFormat) typeface to help you visually differentiate database properties
(from the corresponding initialization parameter, SQL statement, or PL/SQL
procedure), which are typically documented in UPPERCASE typeface. However,
the commands to manage properties are not case sensitive; you can issue
commands in uppercase, lowercase, or mixed-case.
You can change a property if the database is enabled or disabled. However, if the
database is disabled when you change a property, the change does not take effect
until the database is enabled.
6-7
Chapter 6
Scenario 4: Setting the Configuration Protection Mode
Configuration Status:
SUCCESS
Database - South_Sales
Database Status:
SUCCESS
6-8
Chapter 6
Scenario 4: Setting the Configuration Protection Mode
Note:
You cannot change the protection mode from maximum performance mode to
maximum protection mode. You must first change the protection mode to
maximum availability and then to maximum protection mode.
A restart of the primary database is not necessary when changing the
protection mode.
This scenario sets the protection mode of the configuration to the MAXAVAILABILITY
mode. Note that this protection mode requires that there be at least one standby
configured to use standby redo log files and it must receive redo via SYNC or FASTSYNC
mode if it receives redo directly from the primary database. If the standby receives
redo via a far sync instance, then the far sync instance must receive redo via SYNC or
FASTYSYNC mode and the standby must receive redo from the far sync instance via
ASYNC mode.
The broker will not allow this command to succeed unless the standby database is
configured with standby redo log files in the configuration.
3. Change the overall protection mode for the configuration.
Use the EDIT CONFIGURATION command to upgrade the broker configuration to the
MAXAVAILABILITY protection mode:
If the configuration is disabled when you enter this command, the actual protection
mode change is not applied until you enable the configuration with the ENABLE
CONFIGURATION command. The broker will not allow you to enable the configuration
if it does not find a standby database in the configuration that can support the
requirements of the protection mode.
4. Verify the protection mode has changed.
Use the SHOW CONFIGURATION command to display the current protection mode for
the configuration:
DGMGRL> SHOW CONFIGURATION;
6-9
Chapter 6
Scenario 5: Setting up Maximum Availability Mode with a Far Sync Instance
Configuration - DRSolution
Configuration Status:
SUCCESS
See Also:
Managing Data Protection Modes
1. Issue the following commands to add the far sync instance named FS to the broker
configuration:
DGMGRL> ADD FAR_SYNC 'FS' AS CONNECT IDENTIFIER IS FS.EXAMPLE.COM;
DGMGRL> ENABLE FAR_SYNC 'FS';
DGMGRL> SHOW CONFIGURATION;
Configuration - DRSolution
Configuration Status:
SUCCESS
In this output, South_Sales and FS are indented under North_Sales. This indicates
that the primary is sending redo data to both South_Sales and FS.
2. Issue the following commands so that the current primary (North_Sales) sends
redo data to the far sync instance only, and the far sync instance sends redo data
to South_Sales when North_Sales is a primary:
6-10
Chapter 6
Scenario 5: Setting up Maximum Availability Mode with a Far Sync Instance
Configuration - DRSolution
Configuration Status:
SUCCESS
The indentation scheme in the output above indicates that North_Sales sends redo
data to FS and FS sends redo data to South_Sales.
3. Issue the following commands to upgrade the protection mode to maximum
availability:
DGMGRL> EDIT CONFIGURATION SET PROTECTION MODE AS MaxAvailability;
DGMGRL> SHOW CONFIGURATION;
Configuration - DRSolution
Configuration Status:
SUCCESS
If these rules are not created, then North_Sales will not be able to receive redo
data. To check whether the proper rules have been set, use the SHOW CONFIGURATION
WHEN PRIMARY IS command to see what the redo transport configuration would be if
South_Sales were the primary database. For example:
Members:
South_Sales - Primary database
FS - Far Sync
North_Sales - Physical standby database
6-11
Chapter 6
Scenario 6: Enabling Fast-Start Failover and Starting the Observer
To correct this error, set the RedoRoutes property for South_Sales and FS as follows:
DGMGRL> EDIT DATABASE 'South_Sales' SET PROPERTY RedoRoutes='(LOCAL : FS SYNC)';
DGMGRL> EDIT FAR_SYNC 'FS' SET PROPERTY RedoRoutes=('North_Sales : South_Sales)
(South_Sales : North_Sales)';
After the change to the RedoRoutes property for South_Sales and FS is complete, use
the SHOW CONFIGURATION WHEN PRIMARY IS command to confirm that the error has been
cleared:
DGMGRL> SHOW CONFIGURATION WHEN PRIMARY IS 'South_Sales';
Members:
South_Sales - Primary database
FS - Far Sync
North_Sales - Physical standby database
See Also:
Oracle Data Guard Concepts and Administration for instructions on
configuring standby redo log files
2. Configure the primary and standby databases to receive redo via SYNC or FASTSYNC
mode, if they receive redo directly rather than via a far sync instance. If either
database receives redo via a far sync instance, then configure the far sync
instance to receive redo via SYNC or FASTSYNC mode and configure the database to
receive redo via ASYNC mode. For example:
DGMGRL> EDIT DATABASE 'North_Sales' SET PROPERTY 'LogXptMode'='SYNC';
Property "LogXptMode" updated
6-12
Chapter 6
Scenario 6: Enabling Fast-Start Failover and Starting the Observer
The broker does not allow these commands to succeed unless the databases are
configured with standby redo log files.
3. If you have two or more standby databases, set up the FastStartFailoverTarget
configuration property on the primary database to indicate the desired target
standby database. The broker reciprocally sets this property for the target standby
database to indicate the primary database as its future target standby database
when fast-start failover is actually enabled. There is no need for you set this
property on the target standby as this is done for you automatically. For example:
DGMGRL> EDIT DATABASE 'North_Sales' SET PROPERTY
FastStartFailoverTarget='South_Sales';
Property "FastStartFailoverTarget" updated
4. If it is necessary to upgrade the protection mode, use the following DGMGRL EDIT
CONFIGURATION command. For example:
6-13
Chapter 6
Scenario 6: Enabling Fast-Start Failover and Starting the Observer
have to be embedded within the script. If you choose to use a client-side Oracle
Wallet as a secure external password store (see Oracle Database Enterprise User
Security Administrator's Guide), be sure to add credentials for both the primary
and fast-start failover target standby databases. The database connect string that
you specify when adding the credentials for each database must match the
ObserverConnectIdentifer or DGConnectIdentifier database property.
When multiple observers are started, one observer is the master observer after
fast-start failover is enabled, and the remaining observers are backup observers.
Only the master observer can coordinate fast-start failover with Data Guard
broker. If the primary and target standby databases stay connected but the
connection to the master observer is lost, then the broker tries to nominate a
backup observer as the new master observer.
7. Enable fast-start failover. You can enable fast-start failover while connected to any
database system in the broker configuration. For example:
DGMGRL> ENABLE FAST_START FAILOVER;
Enabled.
8. Verify the fast-start failover configuration. Use the SHOW FAST_START FAILOVER
command to display the fast-start failover settings:
DGMGRL> SHOW FAST_START FAILOVER;
Threshold: 30 seconds
Target: South_Sales
Observer: observer.example.com
Lag Limit: 30 seconds (not in use)
Shutdown Primary: TRUE
Auto-reinstate: TRUE
Observer Reconnect: (none)
Observer Override: FALSE
6-14
Chapter 6
Scenario 7: Enabling Fast-Start Failover When a Far Sync Instance Is In Use
Note that the far sync instance database is not specified as the fast-start failover target
for either North_Sales or South_Sales.
The following example shows how to use the EDIT DATABASE command to change the
LogXptMode database property to the value ASYNC for the North_Sales database.
DGMGRL returns the following message to indicate that the LogXptMode property was
updated successfully in the Data Guard configuration file:
Property "LogXptMode" updated
6-15
Chapter 6
Scenario 8: Performing Routine Management Tasks
If the configuration is currently disabled, the database does not use the new property
value until you enable the broker configuration with the ENABLE CONFIGURATION
command.
The following example shows how to use the EDIT DATABASE command to reset the
LogXptMode database configurable property to its default value for the North_Sales
database.
EDIT DATABASE 'North_Sales' RESET PROPERTY LogXptMode;
The following example shows how to use the EDIT CONFIGURATION command to reset the
TraceLevel configuration property to its default value.
Redo data is still being received when you put the physical standby database in the
APPLY-OFF state.
Succeeded.
To change the state of the primary database back to TRANSPORT-ON, do the following:
DGMGRL> EDIT DATABASE North_Sales SET STATE=TRANSPORT-ON;
Succeeded.
6-16
Chapter 6
Scenario 8: Performing Routine Management Tasks
However, disabling the broker's management of a broker configuration does not affect
the actual operation of the underlying Oracle Data Guard configuration or the
databases. For example, the redo transport services and log apply services in the
Oracle Data Guard configuration continue to function unchanged, but you can no
longer manage them.
The only way to disable broker management of the primary database is to use the
DISABLE CONFIGURATION command; the DISABLE DATABASE command only disables
management of a standby database. Likewise, the DISABLE FAR_SYNC command only
disables management of a far sync instance.
Note:
If you disable management of a configuration while connected to the standby
database or far sync instance, you must connect to the primary database (that
is, a database whose control file role is primary) to reenable the configuration.
Disabling the broker's management of a configuration member does not remove the
member from the broker configuration file. You can reenable your ability to use
DGMGRL (or Cloud Control) to manage the member by entering the appropriate
ENABLE CONFIGURATION or ENABLE DATABASE command.
Note:
You cannot disable a standby database from the configuration if fast-start
failover is enabled and the database to be disabled is the target standby
database.
6-17
Chapter 6
Scenario 8: Performing Routine Management Tasks
Note:
If you disable management of a standby database while connected to that
standby database, you must connect to the primary database or another
enabled standby database to reenable broker-management of the standby
database.
WARNING:
If you disable broker management of a standby database in the broker
configuration, that standby database cannot be used by the broker as a failover
target in the event of loss of the primary database.
Note:
The following restrictions apply when disabling a far sync instance:
• You cannot disable a far sync instance if it is specified in the RedoRoutes
property of any other configuration member.
• If you disable management of a far sync instance while connected to that
far sync instance, you must connect to the primary database or another
enabled standby database to reenable broker management of the far sync
instance.
Caution:
If you disable broker management of a far sync instance in the broker
configuration, that far sync instance cannot be specified in a RedoRoutes
property for any other configuration member.
6-18
Chapter 6
Scenario 8: Performing Routine Management Tasks
Note:
After you use the REMOVE CONFIGURATION, REMOVE DATABASE, or REMOVE FAR_SYNC
command, you must reissue the command(s) that you originally issued if you
decide to re-create the deleted object. You must go through the steps in
Scenario 1: Creating a Configuration as necessary, to create a broker
configuration that can be managed with DGMGRL (or Cloud Control).
Note:
The following restrictions apply:
• You cannot remove a standby database from the configuration if fast-start
failover is enabled and the database to be removed is the target standby
database.
• You cannot remove a standby database or a far sync instance if it is
specified in the RedoRoutes property for any other member in the
configuration.
Configuration - DRSolution
6-19
Chapter 6
Scenario 8: Performing Routine Management Tasks
Configuration Status:
SUCCESS
Issue the DGMGRL REMOVE DATABASE command to remove the South_Sales database
information from the Data Guard configuration file:
DGMGRL> REMOVE DATABASE 'South_Sales';
Removed database "South_Sales" from the configuration
Configuration - DRSolution
Configuration Status:
SUCCESS
Configuration - DRSolution
Configuration Status:
SUCCESS
6-20
Chapter 6
Scenario 9: Performing a Switchover Operation
Note:
You cannot remove the configuration if fast-start failover is enabled.
• The state of the primary and standby databases are TRANSPORT-ON and APPLY-ON,
respectively.
• All participating databases are in good health, without any errors or warnings
present.
• The standby database properties were set on the primary database, so that the
primary database can function correctly when transitioning to a standby database
(shown in the following examples in boldface type).
• Standby redo log files are configured on the primary database.
• If the configuration is in maximum availability mode, then the current primary is
configured to receive redo via SYNC or FASTSYNC mode if it will receive redo directly
from the new primary. If it will receive redo via a far sync instance, then the far
sync instance is configured to receive redo via SYNC or FASTSYNC mode and the
current primary is configured to receive redo via ASYNC mode. If the configuration is
in maximum protection mode, then the current primary is configured to receive
redo via SYNC mode.
• If fast-start failover is enabled, you can perform a switchover only to the standby
database that was specified as the target standby database.
The following are the tasks necessary to perform a switchover using the SWITCHOVER
command:
6-21
Chapter 6
Scenario 9: Performing a Switchover Operation
Database - North_Sales
Role: PRIMARY
Intended State: TRANSPORT-ON
Instance(s):
c0
Properties:
DGConnectIdentifier = 'North_Sales.example.com'
ObserverConnectIdentifier = ''
LogXptMode = 'ASYNC'
RedoRoutes = ''
DelayMins = '0'
Binding = 'optional'
MaxFailure = '0'
MaxConnections = '1'
ReopenSecs = '300'
NetTimeout = '30'
RedoCompression = 'DISABLE'
LogShipping = 'ON'
PreferredApplyInstance = ''
ApplyInstanceTimeout = '0'
ApplyLagThreshold = '0'
TransportLagThreshold = '0'
TransportDisconnectedThreshold = '0'
ApplyParallel = 'AUTO'
ApplyInstances = '0'
StandbyFileManagement = 'AUTO'
ArchiveLagTarget = '0'
LogArchiveMaxProcesses = '5'
LogArchiveMinSucceedDest = '1'
DataGuardSyncLatency = '0'
DbFileNameConvert = 'dbs/cdb2_, dbs/cdb1_, dbs/bt, dbs/t, dbs/
cdb4_, dbs/cdb1_, dbs/dt, dbs/t'
LogFileNameConvert = 'dbs/cdb2_, dbs/cdb1_, dbs/bt, dbs/t, dbs/
cdb4_, dbs/cdb1_, dbs/dt, dbs/t'
FastStartFailoverTarget = ''
InconsistentProperties = '(monitor)'
InconsistentLogXptProps = '(monitor)'
6-22
Chapter 6
Scenario 9: Performing a Switchover Operation
SendQEntries = '(monitor)'
LogXptStatus = '(monitor)'
RecvQEntries = '(monitor)'
PreferredObserverHosts = ''
StaticConnectIdentifier = '(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)
(HOST=North_Sales.example.com)(PORT=2840))
(CONNECT_DATA=(SERVICE_NAME=North_Sales_DGMGRL.example.com)
(INSTANCE_NAME=north_sales1)(SERVER=DEDICATED)))'
StandbyArchiveLocation = 'USE_DB_RECOVERY_FILE_DEST'
StandbyAlternateLocation = ''
LogArchiveTrace = 255
LogArchiveFormat = 'db1r_%d_%t_%s_%R.arc'
TopWaitEvents = '(monitor)'
Database Status:
SUCCESS
In particular, you should examine the boldface properties and the current status of the
primary database.
Database - South_Sales
Database Status:
SUCCESS
6-23
Chapter 6
Scenario 9: Performing a Switchover Operation
Configuration - DRSolution
Configuration Status:
SUCCESS
6-24
Chapter 6
Scenario 9: Performing a Switchover Operation
After the switchover completes, use the SHOW CONFIGURATION and SHOW DATABASE
commands to verify that the switchover operation was successful.
Configuration - DRSolution
6-25
Chapter 6
Scenario 10: Performing a Manual Failover Operation
Configuration Status:
SUCCESS
Note:
If multiple fast-start failover targets are configured, then a manual failover is
only possible to the current fast-start failover target.
If you want to perform a manual failover to a standby database that is not the
fast-start failover target standby database, you must first disable fast-start
failover using the FORCE option on the standby database you want to fail over.
See Disabling Fast-Start Failover for more information about the FORCE option.
6-26
Chapter 6
Scenario 10: Performing a Manual Failover Operation
Note that after the failover completes, the original primary database cannot be
used as a standby database of the new primary database unless it is reinstated or
re-created (as described in Reenabling Disabled Databases After a Role Change).
4. Issue the SHOW CONFIGURATION command to verify the failover.
DGMGRL> SHOW CONFIGURATION;
Configuration - DRSolution
Configuration Status:
WARNING
Note that in this example, the configuration was operating in maximum availability
mode. The protection mode was preserved after the failover. The configuration
also has a warning status. The SHOW DATABASE command for the new primary shows
that the warning is the result of not having an enabled physical standby database.
As a result, the warning status indicates that the protection level of the
configuration is not the same as the configured mode.
5. Show the new primary database.
DGMGRL> SHOW DATABASE South_Sales;
Database - South_Sales
Role: PRIMARY
Intended State: TRANSPORT-ON
Instance(s):
south_sales1
Database Warning(s):
ORA-16629: database reports a different protection level from the protection
mode
Database Status:
WARNING
6. Issue the SHOW DATABASE command to see that the former (failed) primary database
was disabled by the broker as a consequence of the failover. It must be reinstated
(as described in Reenabling Disabled Databases After a Role Change).
DGMGRL> SHOW DATABASE 'North_Sales';
Database - North_Sales
6-27
Chapter 6
Scenario 11: Reinstating a Failed Primary Database
north_sales1
Database Status:
ORA-16661: the standby database needs to be reinstated
Database dismounted.
ORACLE instance shut down.
Operation requires startup of instance "north_sales1" on database "North_Sales"
Starting instance "north_sales1"...
ORACLE instance started.
Database mounted.
Continuing to reinstate database "North_Sales" ...
Reinstatement of database "North_Sales" succeeded
After the primary has been reinstated, issue the SHOW CONFIGURATION and SHOW
DATABASE commands to confirm that the old primary has been successfully
reinstated.
3. Show the configuration and its members:
DGMGRL> SHOW CONFIGURATION
Configuration - DRSolution
6-28
Chapter 6
Scenario 12: Converting a Physical Standby to a Snapshot Standby
Members:
South_Sales - Primary database
North_Sales - Physical standby database
Configuration Status:
SUCCESS
Database - South_Sales
Role: PRIMARY
Intended State: TRANSPORT-ON
Instance(s):
south_sales1
Database Status:
SUCCESS
Database - 'North_Sales'
Database Status:
SUCCESS
6-29
Chapter 6
Scenario 13: Monitoring a Data Guard Configuration
Configuration - DRSolution
Configuration Status:
SUCCESS
When you are ready to revert the database back to a physical standby database, use
the DGMGRL CONVERT DATABASE command again as follows. Any updates made to the
database while it was operating as a snapshot standby database will be discarded. All
accumulated redo data will be applied by Redo Apply services after the database is
converted back to a physical standby database.
DGMGRL> CONVERT DATABASE 'South_Sales' to PHYSICAL STANDBY;
6-30
Chapter 6
Scenario 13: Monitoring a Data Guard Configuration
Configuration Status:
WARNING
For example:
DGMGRL> SHOW DATABASE 'North_Sales';
Database - North_Sales
Role: PRIMARY
Intended State: TRANSPORT-ON
Instance(s):
north_sales1
Warning: ORA-16737: the redo transport service for standby "South_Sales" has
an error
Warning: ORA-16714: the value of property LogArchiveTrace is inconsistent with
the database setting
Warning: ORA-16715: redo transport-related property ReopenSecs of standby
database "South_Sales" is inconsistent
Database Status:
WARNING
To identify the exact transport error, use the LogXptStatus monitorable property:
DGMGRL> SHOW DATABASE 'North_Sales' 'LogXptStatus';
LOG TRANSPORT STATUS
PRIMARY_INSTANCE_NAME STANDBY_DATABASE_NAME STATUS
north_sales1 South_Sales ORA-12541: TNS:no listener
The output shows that the listener for the physical standby database is not running. To
fix this error, start the listener for the physical standby database South_Sales.
6-31
Chapter 6
Scenario 13: Monitoring a Data Guard Configuration
The current database memory value (511) is different from both the server parameter
file (SPFILE) value (255) and the Oracle Data Guard broker's property value (255). If
you decide the database memory value is correct, you can update the Oracle Data
Guard broker's property value using the following command:
DGMGRL> EDIT DATABASE 'North_Sales' SET PROPERTY 'LogArchiveTrace'=511;
Property "LogArchiveTrace" updated
This command will result in the broker updating the SPFILE value so that the value of
LogArchiveTrace is kept consistent.
This is useful, for example, for the warning shown in the SHOW DATABASE display in Step
2 is ORA-16715.
DGMGRL> SHOW DATABASE 'North_Sales' 'InconsistentLogXptProps';
INCONSISTENT LOG TRANSPORT PROPERTIES
INSTANCE_NAME STANDBY_NAME PROPERTY_NAME MEMORY_VALUE BROKER_VALUE
south_sales1 South_Sales ReopenSecs 600 300
The current database memory value (600) is different from the Oracle Data Guard
broker's property value (300). If you think the broker's property value is correct, you
can fix the inconsistency by re-editing the property of the standby database with the
same value, as shown in the following example:
DGMGRL> EDIT DATABASE 'South_Sales' SET PROPERTY 'ReopenSecs'=300;
Property "ReopenSecs" updated
You can also reenable the standby database or reset the state of the primary database
to TRANSPORT-ON to fix this inconsistency.
6-32
Chapter 6
Scenario 14: Adding a Recovery Appliance to a Broker Configuration
See Also:
Example 4-6 for an example of how to set up a Recovery Appliance as the redo
destination of a physical standby
6-33
7
Oracle Data Guard Command-Line
Interface Reference
Use the command reference to understand how you can use the Data Guard broker
command-line interface (DGMGRL) to manage your broker configuration.
DGMGRL enables you to manage a Data Guard broker configuration and its various
members directly from the command line, or from batch programs or scripts. You can
use the Data Guard broker command-line interface as an alternative to Oracle
Enterprise Manager Cloud Control (Cloud Control) for managing a Data Guard
configuration.
• Starting the Data Guard Command-Line Interface
• Exiting the Data Guard Command-Line Interface
Specify any of the following keywords when you invoke the DGMGRL command-line
interface:
• <options> can be one of the following choices:
– -echo
7-1
Chapter 7
Starting the Data Guard Command-Line Interface
Displays command input and output to the default display device. If you do not
use this parameter, only the output from the command is displayed.
– -logfile <file-spec> "<dgmgrl-command>"
Specifies a file into which you can capture the actions of the DGMGRL
command-line interface.
Note:
The DGMGRL -logfile option is deprecated as of Oracle Database
12c Release 2 (12.2.0.1). It is supported for backward compatibility
only. Instead, the log file should now be specified using the LOGFILE IS
clause on the START OBSERVER command.
See Also:
– -silent
– username [@connect-identifier]
* dgmgrl username@"connect_identifier"
* dgmgrl username@"'connect_identifier'"
7-2
Chapter 7
Starting the Data Guard Command-Line Interface
WARNING:
Including a password on the command line when invoking DGMGRL is
a security risk. This risk can be avoided either by omitting the password
when invoking DGMGRL and entering it when prompted, or by using
an external authentication method.
For example:
dgmgrl sys "show database 'North_Sales'"
Password: password
The following subsections specify the command format that you enter at the DGMGRL>
command prompt.
Command Effect
@ (at sign) Command Executes a DGMGRL script.
/ (slash) Command Repeats the last command entered at the DGMGRL
command prompt.
ADD DATABASE Adds a new standby database to the existing broker
configuration.
ADD FAR_SYNC Adds an existing far sync instance to an Oracle Data
Guard broker configuration.
ADD RECOVERY_APPLIANCE Adds a Zero Data Loss Recovery Appliance (Recovery
Appliance) to an existing broker configuration.
CONNECT Connects to the specified database using the specified
username.
CONVERT DATABASE Converts the specified database to either a snapshot
standby database or a physical standby database.
CREATE CONFIGURATION Creates a broker configuration and adds a primary
database to that configuration.
DISABLE CONFIGURATION Disables broker management of a configuration so that the
configuration and all of its databases are no longer
managed by the broker.
DISABLE DATABASE Disables broker management of the named standby
database.
DISABLE FAR_SYNC Disables broker management of a far sync instance.
7-3
Chapter 7
Starting the Data Guard Command-Line Interface
Command Effect
DISABLE FAST_START Disables fast-start failover.
FAILOVER
DISABLE FAST_START Allows a user to remove conditions for which a fast-start
FAILOVER CONDITION failover should be performed.
DISABLE Disables broker management of the named Zero Data
RECOVERY_APPLIANCE Loss Recovery Appliance (Recovery Appliance).
EDIT CONFIGURATION Changes the value of a property for the broker
(Property) configuration.
EDIT CONFIGURATION Changes the current protection mode setting for the broker
(Protection Mode) configuration.
EDIT CONFIGURATION Changes the configuration name.
(RENAME)
EDIT CONFIGURATION RESET Resets the specified configuration property to its default
(Property) value.
EDIT DATABASE (Property) Changes the value of a property for the named database.
EDIT DATABASE (Rename) Changes the name used by the broker to refer to the
specified database.
EDIT DATABASE (State) Changes the state of the specified database.
EDIT DATABASE RESET Resets the specified property for the named database to
(Property) its default value.
EDIT FAR_SYNC Changes the name, state, or properties of a far sync
instance.
EDIT FAR_SYNC RESET Resets the specified property for the named far sync
(Property) instance to its default value.
EDIT INSTANCE (AUTO PFILE) Sets the name of the initialization parameter file for the
specified instance.
EDIT INSTANCE (Property) Changes the value of a property for the specified instance.
EDIT INSTANCE RESET Resets an instance-specific property for the specified
(Property) instance(s) to its default value.
EDIT RECOVERY_APPLIANCE Changes the value of the property for the named Zero
(Property) Data Loss Recovery Appliance (Recovery Appliance).
EDIT RECOVERY_APPLIANCE Changes the name used by the broker to refer to the
(Rename) specified Zero Data Loss Recovery Appliance (Recovery
Appliance), as recorded in that Recovery Appliance's
profile in the broker configuration.
EDIT RECOVERY_APPLIANCE Resets the specified property for the named Zero Data
RESET (Property) Loss Recovery Appliance (Recovery Appliance) to its
default value.
ENABLE CONFIGURATION Enables broker management of the broker configuration
and all of its databases.
ENABLE DATABASE Enables broker management of the specified database.
ENABLE FAR_SYNC Enables broker management of the specified far sync
instance.
ENABLE FAST_START Enables the broker to automatically failover from the
FAILOVER primary database to a target standby database.
7-4
Chapter 7
Starting the Data Guard Command-Line Interface
Command Effect
ENABLE FAST_START Allows a user to add conditions for which a fast-start
FAILOVER CONDITION failover should be performed.
ENABLE Enables broker management of the specified Zero Data
RECOVERY_APPLIANCE Loss Recovery Appliance (Recovery Appliance).
EXIT Exits the Data Guard command-line interface.
FAILOVER Performs a database failover operation in which the
standby database, to which DGMGRL is currently
connected, fails over to the role of primary database.
HELP Displays online help for the Data Guard command-line
interface.
HOST or ! (exclamation point) Executes operating system command(s) directly through
the DGMGRL console without leaving DGMGRL.
MIGRATE PLUGGABLE Migrates a PDB from one CDB to another on the same
DATABASE host.
QUIT Quits the Data Guard command-line interface.
REINSTATE DATABASE Reinstates the database after a failover.
REMOVE CONFIGURATION Removes the broker configuration and ends broker
management of its members.
REMOVE DATABASE Removes the specified standby database from the broker
configuration.
REMOVE FAR_SYNC Removes a far sync instance from an Oracle Data Guard
broker configuration.
REMOVE INSTANCE Removes an instance from the broker configuration.
REMOVE Removes the specified Zero Data Loss Recovery
RECOVERY_APPLIANCE Appliance (Recovery Appliance) from the broker
configuration and terminates broker management of the
Recovery Appliance.
SET ECHO Controls whether or not to echo commands that are issued
either at the command-line prompt or from a DGMGRL
script.
SET MASTEROBSERVER TO Lets you manually designate which observer is recognized
as the master observer.
SET MASTEROBSERVERHOSTS Sets the master observer of a broker configuration to the
observer on the target host.
SET ObserverConfigFile Sets the full path and file name of an observer
configuration file.
SET TIME Turns timestamp printing on and off.
SHOW ALL Shows the values of DGMGRL CLI properties.
SHOW CONFIGURATION Displays information about the broker configuration.
SHOW CONFIGURATION WHEN Shows the redo transport configuration that would be in
PRIMARY IS effect if the specified database were the primary database.
SHOW DATABASE Displays information about the specified database.
SHOW FAR_SYNC Shows information about a far sync instance.
SHOW FAST_START FAILOVER Displays all fast-start failover related information.
SHOW INSTANCE Displays information about the specified instance.
7-5
Chapter 7
Starting the Data Guard Command-Line Interface
Command Effect
SHOW OBSERVER Shows information about all registered observers in a Data
Guard broker configuration.
SHOW ObserverConfigFile Shows the value of the ObserverConfigFile property.
SHOW OBSERVERS Shows information about all observers for all broker
configurations in a specific configuration group.
SHOW RECOVERY_APPLIANCE Displays information or property values of the specified
Zero Data Loss Recovery Appliance (Recovery
Appliance).
SHUTDOWN Shuts down a currently running Oracle database.
SPOOL Records the input and output of DGMGRL to a file.
SQL Allows you to enter SQL statements from the Data Guard
command-line interface (DGMGRL).
START OBSERVER Starts the observer.
START OBSERVER IN Starts a fast-start failover observer as a background
BACKGROUND process on the host where the DGMGRL session is
running.
START OBSERVING Starts a new observer for each broker configuration in the
specified group.
STARTUP Starts an Oracle instance with the same options as
SQL*Plus, including mounting and opening a database.
STOP OBSERVER Stops the observer.
STOP OBSERVING Stops all local observers running on the host where this
DGMGRL session is running, for all broker configurations
in a specific group.
SWITCHOVER Performs a switchover operation in which the current
primary database becomes a standby database, and the
specified standby database becomes the primary
database.
VALIDATE DATABASE Performs a comprehensive set of database checks prior to
a role change.
VALIDATE DATABASE Performs validation of data files across the primary
DATAFILE database and standby databases.
VALIDATE DATABASE SPFILE Performs a comparison of server parameter file (SPFILE)
entries between the primary database and a specified
standby database.
VALIDATE FAR_SYNC Performs a comprehensive set of checks for a far sync
instance.
VALIDATE NETWORK Performs network connectivity checks between members
CONFIGURATION of the configuration .
VALIDATE STATIC CONNECT Validates database static connect identifier(s).
IDENTIFIER
7-6
Chapter 7
Starting the Data Guard Command-Line Interface
• If you specify more than one option on the command, you can specify the options
in any order.
• A semicolon is required at the end of each DGMGRL command.
• Characters specified in a DGMGRL command string value are interpreted as
lowercase characters, unless enclosed in double (") or single (') quotation marks.
For example, database and DatAbaSe are equivalent, but "database" and
"DatAbaSe" are not.
• You can use the backslash (\) to escape a single quotation mark ('), a double
quotation mark ("), and the backslash character (\) itself if these characters appear
in a character string.
• Some operations on a broker configuration may require that one or more
databases be shut down and restarted. In most cases, DGMGRL will automatically
shut down and restart a given database for you if the following are true:
– The instance-name is the SID (this applies to Cloud Control as well as
DGMGRL).
– The broker must be able to connect to the database using the same
credentials given in the last CONNECT command, even if the last CONNECT
command was used to connect to another database.
Command Examples
Example 7-1 Connecting to a Database Instance on a Local System
This example demonstrates how to connect to a database instance on the local
system.
% dgmgrl
.
.
.
Welcome to DGMGRL, type "help" for information.
7-7
Chapter 7
Exiting the Data Guard Command-Line Interface
For example:
DGMGRL> EXIT;
Format
From within DGMGRL, the syntax is as follows:
DGMGRL> @script_file_name
Command Parameters
Flag Description
-echo Prints all the commands in the script along
with their execution results.
Usage Notes
The script that you execute with this command must meet the following qualifications:
• DGMGRL must be able to access the script; otherwise the command fails because
DGMGRL cannot open the file.
• Every DGMGRL command included in the script must end with a semi-colon.
• Recursive @ command execution is allowed, but the limit of recursive levels is 20.
If the recursive level reaches 20, then the execution is aborted and none of the
unexecuted commands is executed. Therefore, self-recursive execution of the @
command (for example, putting an @abc.script command in abc.script itself)
should be used with caution.
7-8
Chapter 7
/ (slash) Command
• If there is a START OBSERVER command in the script, then any commands that come
after it are ignored because the START OBSERVER command turns the DGMGRL
session into an observer.
The START OBSERVER IN BACKGROUND command is treated as a normal command; that
is, any commands that come after it are executed.
• Comment lines are permitted in the script, but they must be terminated with a
semi-colon. For example the following comments would be allowed in a script:
REM Hello World;
-- Hello Again!;
The double dash must be followed by a space character before the comment text.
Format
DGMGRL> /
Usage Notes
• The following commands are not repeatable using the / (slash) command:
– Return
– An unrecognized command
– The CONNECT command (because it may contain credentials)
– The / (slash) command itself
Command Example
In the following example, the / (slash) command is used to easily repeat the SHOW
CONFIGURATION command.
Configuration - Sales_Configuration
Configuration Status:
SUCCESS
DGMGRL> /
Configuration - Sales_Configuration
7-9
Chapter 7
ADD DATABASE
Members:
North_Sales - Primary database
Local_Sales - Physical standby database
Remote_Sales - Physical standby database (receiving current redo)
Configuration Status:
SUCCESS
DGMGRL>
Format
Command Parameters
database-name
The name that will be used by the broker to refer to this standby database. It must
match (case-insensitive) the value of the corresponding database DB_UNIQUE_NAME
initialization parameter.
connect-identifier
A fully specified connect descriptor or a name to be resolved by an Oracle Net
Services naming method (for example, TNS). The value you specify is also used as
the initial value of the DGConnectIdentifier database property.
Usage Notes
• To issue this command, you must connect to the primary database or to an
enabled standby database that is already in the configuration.
• The broker uses the specified connect-identifier to communicate with the
specified database from other databases. Therefore, you must ensure that the
connect-identifier can be used to address the specified database from all
databases in your configuration. For example, if TNS is used as the naming
method, you must ensure that the tnsnames.ora file on every database and
instance that is part of the configuration contains an entry for the connect-
identifier. The connect identifier must resolve to the same connect descriptor. If
the database that is being added is an Oracle RAC database, the connect-
identifier provided here must reach all instances of the Oracle RAC, preferably
with FAILOVER attributes set.
See Also:
Oracle Database Net Services Administrator's Guide
7-10
Chapter 7
ADD FAR_SYNC
• If the connection cannot be made, the broker does not add the new database to
the configuration.
• You must clear any remote redo transport destinations on the standby database
before it can be added to the configuration.
Command Example
The following example shows how to add a database named South_Sales.
DGMGRL> ADD DATABASE South_Sales AS CONNECT IDENTIFIER IS South_Sales.example.com;
Database "South_Sales" added
Format
Command Parameters
far_sync_instance_name
The name that will be used by the broker to refer to this far sync instance. It must
match (case-insensitive) the value of the corresponding far sync instance
DB_UNIQUE_NAME initialization parameter.
connect-identifier
A fully specified connect descriptor or a name to be resolved by an Oracle Net
Services naming method (for example, TNS). The value you specify is also used as
the initial value of the DGConnectIdentifier property.
Usage Notes
• The far sync instance must already exist before you can add it to a broker
configuration.
• You must clear any remote redo transport destinations on the far sync instance
before it can be added to the configuration.
Command Example
The following example adds a far sync instance named chicago to the configuration.
DGMGRL> ADD FAR_SYNC chicago AS CONNECT IDENTIFIER IS chicago.example.com;
7-11
Chapter 7
CONNECT
The AS CONNECT IDENTIFIER clause is optional. If you do not specify this clause, then the
broker searches the LOG_ARCHIVE_DEST_n initialization parameters on the primary
database and all enabled standby databases for an entry that corresponds to the
Recovery Appliance being added.
Format
Command Parameters
object name
The name that will be used by the broker to refer to this Recovery Appliance. It must
match (case-insensitive) the value of the corresponding Recovery Appliance
DB_UNIQUE_NAME initialization parameter.
connect-identifier
A fully specified connect descriptor or a name to be resolved by an Oracle Net
Services naming method (for example, TNS). The value you specify is also used as
the value of the DGConnectIdentifier database property.
Usage Notes
• To issue this command, you must connect to the primary database or to an
enabled standby database that is already in the configuration.
• The broker uses the specified connect identifier to communicate with the specified
Recovery Appliance from any database in the configuration. Therefore, you must
ensure that the connect identifier can be used to address the specified Recovery
Appliance from any database in the configuration. For example, if TNS is used as
the naming method, you must ensure that the tnsnames.ora file on every database
and instance that is part of the configuration contains an entry for the connect
identifier. The connect identifier must resolve to the same connect descriptor.
• If the connection cannot be made, then the broker does not add the new Recovery
Appliance to the configuration.
• It is possible to have more than one Recovery Appliance in the configuration.
Command Example
The following example shows how to add a Recovery Appliance named
EnterpriseRecoveryAppliance.
7.8 CONNECT
The DGMGRL CONNECT command connects you to a database or far sync instance that
is a member of a Data Guard broker configuration.
Format
7-12
Chapter 7
CONNECT
Command Parameters
username
Represents the username with which you want to connect to the configuration
member. You will be prompted for a password after you enter a username and
optionally, a connect-identifier.
connect-identifier
This parameter is optional. It is an Oracle Net Services connect identifier for the
configuration member to which you want to connect. The exact syntax depends upon
the Oracle Net Services communications protocol your Oracle installation uses.
Usage Notes
• The username and password must be valid for the configuration member to which
you are trying to connect.
The username you specify must have the SYSDG or SYSDBA privilege.
• The AS clause is optional. If it is specified, then DGMGRL attempts to connect as
either SYSDG or SYSDBA, whichever one was specified. If the AS clause is not
specified, then DGMGRL first attempts an AS SYSDG connection; if that fails, it then
attempts an AS SYSDBA connection.
• If the CONNECT command returns an error, check to see that you specified a valid
connect-identifier.
• When the CONNECT command is successful, the name of the configuration member
to which the connection has been made is shown.
Command Examples
Example 1: Connecting to a Local Configuration Member
This example connects to the default database or far sync instance on the local
system.
DGMGRL> CONNECT sysdg;
Password: password
Connected to "North_Sales"
Connected as SYSDG.
7-13
Chapter 7
CONVERT DATABASE
You must set up Oracle Wallet or SSL to use CONNECT '/'. By setting up Oracle Wallet
or SSL, you can write a script to securely start and run the observer as a background
job without specifying database credentials in the script.
Format
Usage Notes
• A physical standby database cannot be converted to a snapshot standby database
if it is the target of a fast-start failover. The ORA-16668: operation cannot be
performed on the fast-start failover target standby database error will be
returned.
• A physical standby database cannot be converted to a snapshot standby database
if its RedoRoutes configurable property is set to non-NULL value.
• Use the DGMGRL ADD DATABASE command to import an existing snapshot
standby database into an Oracle Data Guard broker configuration.
• A snapshot standby database cannot be the target of a switchover or a fast-start
failover.
• A snapshot standby database can be the target of a manual failover if fast-start
failover is disabled.
• You can use the SHOW CONFIGURATION or SHOW DATABASE command to verify the
conversion result. For example:
DGMGRL> SHOW CONFIGURATION;
Configuration - DRSolution
7-14
Chapter 7
CREATE CONFIGURATION
Configuration Status:
SUCCESS
• After a snapshot standby database is converted back to a physical standby
database, it will be in the default state for a physical standby database, APPLY-ON.
Command Examples
Example 1: Converting a Physical Standby to a Snapshot Standby
Issue the following to convert a physical standby database to a snapshot standby
database:
DGMGRL> CONVERT DATABASE 'South_Sales' to SNAPSHOT STANDBY;
Converting database "South_Sales" to a Snapshot Standby database, please wait...
Database "South_Sales" converted successfully
Format
Command Parameters
configuration-name
A user-friendly name for the configuration you are creating. Valid names contain any
alphanumeric characters. If spaces are included in the name, the name must be
enclosed in double or single quotation marks. The name must consist of 30 or fewer
bytes.
7-15
Chapter 7
CREATE CONFIGURATION
database-name
The name that will be used by the broker to refer to the primary database. It must
match (case-insensitive) the value of the primary database DB_UNIQUE_NAME
initialization parameter.
connect-identifier
A fully specified connect descriptor or a name to be resolved by an Oracle Net
Services naming method (for example, TNS). The value you specify is also used as
the initial value of the DGConnectIdentifier database property.
Usage Notes
• A broker configuration is a named collection of one or more databases that you
want to manage as a group. You must specify a value for each of the command
parameters. There are no default values.
• You must connect to the primary database to issue this command.
• The broker uses the specified connect-identifier to communicate with the
specified database from other databases. Therefore, you must ensure that the
connect-identifier can be used to address the specified database from all
databases in your configuration. For example, if TNS is used as the naming
method, you must ensure that the tnsnames.ora file on every database and
instance that is part of the configuration contains an entry for the connect-
identifier. The connect identifier must resolve to the same connect descriptor. If
the database that is being added is an Oracle RAC database, the connect-
identifier provided here must reach all instances of the Oracle RAC, preferably
with FAILOVER attributes set.
See Also:
Oracle Database Net Services Administrator's Guide
• To add standby databases after you create the broker configuration, use the ADD
DATABASE command.
• You must clear any remote redo transport destinations on the primary database
that do not have the NOREGISTER attribute, before a configuration can be created.
Command Example
The following example creates a new broker configuration named DRSolution with a
primary database named North_Sales.
DGMGRL> CREATE CONFIGURATION 'DRSolution' AS
> PRIMARY DATABASE IS 'North_Sales'
> CONNECT IDENTIFIER IS North_Sales.example.com;
Configuration "DRSolution" created with primary database "North_Sales"
7-16
Chapter 7
DISABLE CONFIGURATION
Format
DISABLE CONFIGURATION;
Command Parameters
None.
Usage Notes
• A disabled configuration and all of its constituent databases are no longer
managed by the broker.
• The only way to disable broker management of the primary database is to use the
DISABLE CONFIGURATION command.
• This command does not remove the broker configuration from the configuration
file. See the REMOVE CONFIGURATION command for more information about
removing the configuration.
• You can edit database properties and modify the configuration's protection mode
while the configuration is disabled. However, any changes made to properties or to
the protection mode will not take effect until the configuration is enabled.
• This command cannot be executed if fast-start failover is enabled.
Command Example
The following example disables management of the broker configuration and all of its
databases.
DGMGRL> DISABLE CONFIGURATION;
Disabled.
Format
Command Parameters
database-name
Name of the standby database to be disabled.
7-17
Chapter 7
DISABLE FAR_SYNC
Usage Notes
• You cannot specify the name of a primary database.
• Use the DISABLE CONFIGURATION command to disable the primary and all standby
databases.
• If the sole standby database is disabled, you have no failover option. This standby
database is not viable for failover until it is reenabled.
• This command cannot be used to disable the fast-start failover target database
when fast-start failover is enabled.
Command Example
The following example shows how to disable a database named South_Sales.
DGMGRL> DISABLE DATABASE 'South_Sales';
Disabled.
Format
Command Parameters
far_sync_instance_name
The name of the far sync instance to be disabled.
Usage Notes
• A far sync instance that has its RedoRoutes property set cannot be disabled.
Command Example
The following example disables broker management of a far sync instance named
chicago.
Format
Command Parameters
None.
7-18
Chapter 7
DISABLE FAST_START FAILOVER CONDITION
Usage Notes
• If the primary and target standby database have a network connection, use
DISABLE FAST_START FAILOVER without the FORCE option to disable fast-start failover
on all databases in the broker configuration. If errors occur during the disable
operation, the broker returns an error message and stops the disable operation.
You may need to reissue the DISABLE FAST_START FAILOVER command with the FORCE
option to override the error conditions and disable fast-start failover on the
database to which you are connected. See Disabling Fast-Start Failover for more
information.
• Use DISABLE FAST_START FAILOVER with the FORCE option when the network between
the primary and target standby databases is disconnected or when the database
upon which the command is received does not have a connection with the primary
database. The FORCE option disables fast-start failover on the database to which
you are connected, even when errors occur.
• Disabling fast-start failover with the FORCE option on a primary database that is
disconnected from the observer and the target standby database does not prevent
the observer from initiating a fast-start failover to the target standby database.
• You can disable fast-start failover while connected to any database in the broker
configuration so long as connectivity exists between that database and the
primary.
• If disabled by force at the target standby database and the connection
subsequently resumes with the primary database, fast-start failover is disabled on
all databases in the configuration.
• Disabling fast-start failover with the FORCE option while connected to the primary
will disable fast-start failover on the target standby database if there is network
connectivity between both databases.
Command Examples
Example 1: Disabling a Fast-Start Failover
The following example shows how to disable fast-start failover.
DGMGRL> DISABLE FAST_START FAILOVER;
Disabled.
Format
7-19
Chapter 7
DISABLE RECOVERY_APPLIANCE
Command Parameters
value
Possible values are any conditions for which a fast-start failover has been enabled.
Usage Notes
If the condition has not been set or if it is an unrecognized condition, then an error is
raised.
Command Example
This example specifies that the detection of a corrupted control file does not
automatically initiate an immediate fast-start failover.
DGMGRL> DISABLE FAST_START FAILOVER CONDITION "Corrupted Controlfile";
Format
Command Parameters
object name
Name of the Recovery Appliance to be disabled.
Command Example
The following example shows how to disable a Recovery Appliance named
EnterpriseRecoveryAppliance.
Format
7-20
Chapter 7
EDIT CONFIGURATION (Protection Mode)
Command Parameters
property-name
The name of a configuration property.
value
The new value for the property.
See Also:
Managing the Members of a Broker Configuration and Oracle Data Guard
Broker Properties for information about configuration properties
Usage Notes
• Issue this command while connected to the primary database or to any standby
database in the broker configuration having connectivity to the primary database.
• Use the SHOW CONFIGURATION command to display the current property information
for the configuration.
Command Example
The following example shows how to set the FastStartFailoverThreshold configuration
property to 90 seconds.
DGMGRL> EDIT CONFIGURATION SET PROPERTY FastStartFailoverThreshold=90;
Format
Command Parameters
protection-mode
The data protection mode in which you want the configuration to run when the
configuration is enabled. The possible protection modes are:
MAXPROTECTION
MAXAVAILABILITY
MAXPERFORMANCE
Usage Notes
• Before you use the EDIT CONFIGURATION command to set the protection mode,
ensure that at least one standby is configured to receive redo via SYNC or FASTSYNC
mode if it receives redo directly from the primary. If the standby receives redo via a
7-21
Chapter 7
EDIT CONFIGURATION (Protection Mode)
far sync instance, the far sync instance must be configured to receive redo via SYNC
or FASTSYNC mode and the standby must be configured to receive redo via ASYNC
mode.
• The following table shows the configuration protection modes and the minimum
corresponding settings for redo transport services:
See Also:
Managing the Members of a Broker Configuration for more information
about the protection modes and redo transport services
Configuration - DRSolution
Configuration Status:
SUCCESS
If broker management of the configuration is disabled when you enter the EDIT
CONFIGURATION command, the protection mode of the configuration does not take effect
until the next time you enable the configuration with the ENABLE CONFIGURATION
command.
Command Example
The following example shows how to upgrade the broker configuration to the
MAXAVAILABILITY protection mode.
Verify that standby redo log files are configured on the standby database and that the
redo transport service is set to SYNC, for example:
7-22
Chapter 7
EDIT CONFIGURATION (RENAME)
Format
Command Parameters
new-configuration-name
The new name for the configuration.
Command Example
The following example shows how to rename a configuration named DR_Sales to
HA_Sales.
Configuration - DR_Sales
Configuration Status:
DISABLED
Configuration - HA_Sales
Configuration Status:
SUCCESS
7-23
Chapter 7
EDIT CONFIGURATION RESET (Property)
Format
Command Parameters
property-name
The name of an existing configuration property.
Usage Notes
• Issue this command while connected to the primary database or to any standby
database in the broker configuration having connectivity to the primary database.
• Use the SHOW CONFIGURATION command to display the current property information
for the configuration.
Command Example
The following example shows how to reset the BystandersFollowChange property.
DGMGRL> EDIT CONFIGURATION RESET PROPERTY BystandersFollowChange;
Succeeded.
Format
Command Parameters
database-name
The name of the database for which you want to change a property value.
property-name
The name of an existing database-specific property. If this is an Oracle RAC
database, this property change affects all instances of the database.
See Also:
Managing the Members of a Broker Configuration and Oracle Data Guard
Broker Properties for information about properties.
7-24
Chapter 7
EDIT DATABASE (Property)
value
The new value for the property.
Note:
This command can be used to change the value of an instance-specific
property if and only if just one instance is known by the broker for the named
database. An attempt to use this command to change an instance-specific
property when the broker knows of multiple instances of the database will be
rejected. It is recommended to only use EDIT INSTANCE (property) to change
the value of an instance-specific property.
Command Examples
Example 1: Editing a Configurable Property at the Database Level
The following example edits a configurable property at the database level.
DGMGRL> EDIT DATABASE 'North_Sales' SET PROPERTY 'ArchiveLagTarget'=1200;
Property "ArchiveLagTarget" updated
7-25
Chapter 7
EDIT DATABASE (Rename)
Format
Command Parameters
database-name
The name of the database that you want to change.
new-database-name
The new name of the database.
Usage Notes
• Use this command to track changes to the DB_UNIQUE_NAME initialization parameter
for this database.
Caution:
The database-name must always match the value for that database's
DB_UNIQUE_NAME initialization parameter.
• This command can only be done when broker management of the database that
you are renaming is disabled.
Command Example
The following example shows how to edit and rename a database.
DGMGRL> DISABLE DATABASE 'South_Sales_typo';
Disabled.
Format
7-26
Chapter 7
EDIT DATABASE RESET (Property)
Command Parameters
database-name
The name of the database for which you want to change the state.
state
The state in which you want the database to be running. The possible states are:
TRANSPORT-ON (primary database only)
TRANSPORT-OFF (primary database only)
APPLY-ON (physical or logical standby database only)
APPLY-OFF (physical or logical standby database only)
instance-name
The name of the instance you want to become the apply instance if this is an Oracle
RAC standby database.
Usage Notes
• If the target state is APPLY-ON and this database is currently a physical or logical
standby database, the optional WITH APPLY INSTANCE clause specifies which
instance will become the apply instance.
• If the target state is not APPLY-ON or if the database is currently in the primary role,
the WITH APPLY INSTANCE clause is ignored even if it is specified.
• You cannot change the state of a snapshot standby database.
• All instances of an Oracle RAC database are affected by this database state
change.
Command Example
The following examples show how to change the state of a database.
DGMGRL> EDIT DATABASE 'South_Sales' SET STATE='APPLY-ON';
Succeeded.
Format
Command Parameters
database-name
The name of the database for which you want to reset the property value back to its
default.
property-name
The name of an existing database-specific configurable property.
7-27
Chapter 7
EDIT FAR_SYNC
Command Example
The following example shows how to reset the NetTimeout property for the database
named South_Sales.
DGMGRL> EDIT DATABASE 'South_Sales' RESET PROPERTY NetTimeout;
Succeeded.
Format
EDIT FAR_SYNC far_sync_instance_name RENAME TO
new_far_sync_instance_name;
Command Parameters
far_sync_instance_name
The name of the far sync instance for which you want to edit information. It must
match (case-insensitive) the value of the corresponding database DB_UNIQUE_NAME
initialization parameter.
new_far_sync_instance_name
The new name of the far sync instance.
property_name
The name of an existing far sync instance-specific configurable property.
Command Example
The following example renames a far sync instance named chicago to the name
dallas.
Format
7-28
Chapter 7
EDIT INSTANCE (AUTO PFILE)
Command Parameters
far_sync_instance_name
The name of the far sync instance for which you want to edit information. It must
match (case-insensitive) the value of the corresponding database DB_UNIQUE_NAME
initialization parameter.
property_name
The name of the property to be reset to its default value.
Command Example
The following example shows how to reset the ReopenSecs property back to its default
value for the far sync instance named dallas.
DGMGRL> EDIT FAR_SYNC 'dallas' RESET PROPERTY ReopenSecs;
Format
Command Parameters
instance-name
The name of the instance (SID) for which you want to specify its initialization
parameter file.
database-name
The name of the database to which the instance-name is associated.
initialization-file
Executes the startup operation for the instance when a subsequent broker operation
requires the instance to be started automatically. If SET AUTO PFILE is set to OFF,
automatic restart of that instance is disabled. When a subsequent operation needs to
start that instance, you must start it manually. If you do not specify SET AUTO PFILE for
the instance, the automatic startup operation looks for the initialization parameter file
at the default location.
Usage Notes
• The instance-name can be unique across the configuration. If instance-name is not
unique, you must specify both the database-name and the instance-name to fully
identify the instance.
• SET AUTO PFILE is valid only for the duration of the current DGMGRL session. You
must specify SET AUTO PFILE again if you quit and reenter DGMGRL.
7-29
Chapter 7
EDIT INSTANCE (Property)
Command Example
The following example shows how to change the parameter file used to start an
instance of a database.
DGMGRL> EDIT INSTANCE 'south_sales1' ON DATABASE 'South_Sales'
> SET AUTO PFILE='initsales1.ora';
Instance 'south_sales1' updated
Format
Command Parameters
instance-name
The name of the instance (SID) for which you want to change an instance-specific
property's value. If an asterisk is specified for instance-name, then either the ON
DATABASE clause or the ON FAR_SYNC clause must also be specified and this change will
be applied to the specified property for each instance associated with that database or
far sync. See Oracle Data Guard Broker Properties for the instance-specific properties
that can be changed using this command.
database-name
The name of the database with which the instance-name is associated. This must be
specified if an asterisk is specified for instance-name, or if instance-name is not unique
across the configuration
far-sync-name
The name of the far sync with which the instance-name is associated.
property-name
The name of the instance-specific property for which you want to set a new value.
See Also:
Managing the Members of a Broker Configuration and Oracle Data Guard
Broker Properties for information about properties.
value
The new value for the property.
7-30
Chapter 7
EDIT INSTANCE RESET (Property)
Usage Notes
• The instance-name can be unique across the configuration. If instance-name is not
unique, you must specify both the database-name (or far-sync-name) and the
instance-name to fully identify the instance.
Command Examples
Example 1: Editing an Instance-Specific Property
Edit an instance-specific property.
DGMGRL> EDIT INSTANCE 'north_sales1' ON DATABASE 'North_Sales'
> SET PROPERTY 'StandbyArchiveLocation'='/archfs/arch/';
Property "StandbyArchiveLocation" updated.
Failed.
Format
7-31
Chapter 7
EDIT INSTANCE RESET (Property)
Command Parameters
instance-name
The name of the instance (SID) for which you want to reset an instance-specific
property's value to the default. If an asterisk is specified for instance-name, the ON
DATABASE clause must also be specified and the property will be reset to the default for
each instance associated with that database.
database-name
The name of the database with which the instance-name is associated. This must be
specified if an asterisk is specified for instance-name, or if instance-name is not unique
across the configuration.
property-name
The name of the instance-specific property that you want to reset to its default value.
See Also:
Managing the Members of a Broker Configuration and Oracle Data Guard
Broker Properties for information about properties.
value
The new value for the property.
Usage Notes
• The instance-name can be unique across the configuration. If instance-name is not
unique, you must specify both the database-name and the instance-name to fully
identify the instance.
• This command cannot be used to change a database-specific property.
Command Examples
Example 1: Resetting a Property for a Specific Instance
The following command shows how to reset the LogArchiveTrace property for the
specific instance south1 on the database named South_Sales.
DGMGRL> EDIT INSTANCE 'south1' ON DATABASE 'South_Sales'
> RESET PROPERTY LogArchiveTrace;
Succeeded.
7-32
Chapter 7
EDIT RECOVERY_APPLIANCE (Property)
Format
Command Parameters
object name
The name of the Recovery Appliance for which you want to change a property value.
property-name
The name of an existing Recovery Appliance-specific property. Valid properties are as
follows:
• DGConnectIdentifier
• LogXptMode
• DelayMins
• Binding
• MaxFailure
• MaxConnections
• ReopenSecs
• NetTimeout
• RedoCompression
• LogShipping
• ArchiveLagTarget
• LogArchiveMaxProcesses
• LogArchiveMinSucceedDest
• InconsistentProperties
• InconsistentLogXptProps
• AlternateLocation
value
The new value for the property.
Command Example
The following example shows an example of editing a configurable property.
DGMGRL> EDIT RECOVERY_APPLIANCE 'EnterpriseRecoveryAppliance' SET PROPERTY
'ReopenSecs'=300;
Property "ReopenSecs" updated
7-33
Chapter 7
EDIT RECOVERY_APPLIANCE (Rename)
Format
Command Parameters
object name
The name of the Recovery Appliance that you want to change.
Usage Notes
• Use this command to track changes to the DB_UNIQUE_NAME initialization parameter
for this Recovery Appliance.
Caution:
The name of the Recovery Appliance must always match the value of the
DB_UNIQUE_NAME initialization parameter for that Recovery Appliance.
Command Example
The following example shows how to edit and rename a Recovery Appliance.
DGMGRL> EDIT RECOVERY_APPLIANCE 'EnterpriseRecoveryAppliance_typo'
RENAME TO 'EnterpriseRecoveryAppliance';
Succeeded.
Format
Command Parameters
object name
The name of the Recovery Appliance for which you want to reset the property value
back to its default.
7-34
Chapter 7
ENABLE CONFIGURATION
property-name
The name of an existing database-specific configurable property.
Command Example
The following example shows how to reset the ReopenSecs property back to its default
value for the Recovery Appliance named South_Sales.
DGMGRL> EDIT DATABASE 'South_Sales' RESET PROPERTY ReopenSecs;
Succeeded.
Format
ENABLE CONFIGURATION;
Command Parameters
None.
Usage Notes
• Use this command to enable broker management of the primary database and all
members of the configuration, if these members are not explicitly disabled by the
user.
• To issue this command, you must connect to a database whose control file role is
primary.
• By default, broker management of the configuration's databases is enabled in the
TRANSPORT-ON state with redo transport services turned on at the primary database
and APPLY-ON with log apply services started at the standby databases. Far sync
instances will be enabled such that they receive redo data and send redo data.
You can change the state of a database using the EDIT DATABASE (State)
command, but not when the database or the entire configuration is disabled. You
cannot change the state of a far sync instance.
• Use the SHOW CONFIGURATION command to display information about the
configuration.
• Use this command to update the roles stored in the broker configuration if a
failover or switchover was performed using SQL*Plus instead of DGMGRL or
Cloud Control.
Command Example
The following example enables management of a broker configuration.
DGMGRL> ENABLE CONFIGURATION;
Enabled.
7-35
Chapter 7
ENABLE DATABASE
Caution:
Do not issue the ENABLE DATABASE command on a standby database that needs
to be reinstated. See Reenabling Disabled Databases After a Role Change for
more details.
Format
Command Parameters
database-name
The name of the standby database for which you want to enable broker management.
Usage Notes
• You must connect to the primary database or to an already enabled standby
database to issue this command.
• A standby database may have been disabled by the broker as a consequence of a
prior failover or switchover operation. See Reenabling Disabled Databases After a
Role Change to understand how the database can be reinstated or re-created.
• By default, broker management of the physical or logical standby database is
enabled in the APPLY-ON state with log apply services enabled. You can change the
state of the standby database using the EDIT DATABASE (State) command, but
only when the database is enabled.
• Use the SHOW DATABASE command to display information about the database.
• For an Oracle RAC database, only one instance is required to be started and
mounted for this command to succeed.
Command Example
The following example shows how to enable a database named South_Sales.
DGMGRL> ENABLE DATABASE 'South_Sales';
Enabled.
7-36
Chapter 7
ENABLE FAR_SYNC
Format
Command Parameters
far_sync_instance_name
The name of the far sync instance for which you want to enable broker management.
Command Example
The following example enables broker management of a far sync instance named
dallas.
Format
Command Parameters
None.
Usage Notes
• The prerequisites described in Prerequisites for Enabling Fast-Start Failover must
be met before you issue this command to enable fast-start failover.
• Issuing the ENABLE FAST_START FAILOVER command does not trigger a failover, it only
allows the observer that is monitoring the configuration to initiate a fast-start
failover if conditions warrant a failover.
• You can enable fast-start failover while connected to any database in the broker
configuration.
• If you do not start the observer after you have enabled fast-start failover, the
ORA-16819 warning is displayed for the primary and target standby databases. For
example:
DGMGRL> SHOW DATABASE 'South_Sales';
Database - South_Sales
Role: PRIMARY
Intended State: TRANSPORT-ON
7-37
Chapter 7
ENABLE FAST_START FAILOVER
Instance(s):
south_sales1
Database Warning(s):
ORA-16819: fast-start failover observer not started
Database Status:
WARNING
• To enable fast-start failover for a broker configuration with multiple standby
databases, the FastStartFailoverTarget configuration property on the primary
database must specify one or more viable target standby databases. Both the
primary database and the target standby databases must have:
– Standby redo logs configured
– Redo transport must be properly configured at both databases for the
configured protection mode
Oracle also recommends Flashback Database be enabled on both the primary and
standby databases to allow for reinstatement of the old primary database after a
failover. If it is not enabled, then you will receive a warning when you enable fast-
start failover:
DGMGRL> ENABLE FAST_START FAILOVER;
Warning: ORA-16827: Flashback Database is disabled
Command Examples
Example 1: Enabling a Fast-Start Failover
The following example enables fast-start failover.
DGMGRL> ENABLE FAST_START FAILOVER;
Enabled.
7-38
Chapter 7
ENABLE FAST_START FAILOVER CONDITION
Health Conditions:
Corrupted Controlfile YES
Corrupted Dictionary YES
Inaccessible Logfile NO
Stuck Archiver NO
Datafile Write Errors YES
Format
ENABLE FAST_START FAILOVER CONDITION value;
Command Parameters
value
Possible values are those described in the SHOW FAST_START FAILOVER command as
health conditions. The Oracle error ORA-00240 can also be named as a condition by
specifying 240 as the value.
Usage Notes
• Table 7-2 lists some examples of health conditions maintained by the database
health-check facility.
• An error is raised if the specified value is not recognized or if the condition has
already been set.
• Table 7-2 Examples of Health Conditions
• You can display these configurable conditions with the SHOW FAST_START FAILOVER
command.
Command Examples
Example 1
7-39
Chapter 7
ENABLE RECOVERY_APPLIANCE
The following example specifies that a fast-start failover should be done if a corrupted
controlfile is detected.
ENABLE FAST_START FAILOVER CONDITION "Corrupted Controlfile";
Example 2
The following example specifies that a fast-start failover should be done if an
ORA-00240 error is raised.
ENABLE FAST_START FAILOVER CONDITION 240;
Example 3
The following example displays output that shows the condition Datafile Write Errors.
DGMGRL> SHOW FAST_START FAILOVER;
Format
Command Parameters
object name
The name of the Recovery Appliance for which you want to enable broker
management.
7-40
Chapter 7
EXIT
Usage Notes
• You must connect to the primary database or to an already enabled standby
database to issue this command.
• Use the SHOW RECOVERY_APPLIANCE command to display information about the
Recovery Appliance.
Command Example
The following example shows how to enable a Recovery Appliance named
EnterpriseRecoveryAppliance.
7.39 EXIT
The EXIT command exits (quits) the broker’s command-line interface.
Format
EXIT;
Command Parameters
None.
Usage Notes
• This command has the same effect as the QUIT command.
• A database connection is not required to execute this command. However, if you
are connected, this command breaks the connection.
Command Example
The following example demonstrates how to exit (quit) the command-line interface.
DGMGRL> EXIT;
7.40 FAILOVER
The FAILOVER command invokes a failover that transitions the named (target) standby
database into the role of a primary database.
This type of failover is referred to as a manual failover. See Manual Failover for more
information.
7-41
Chapter 7
FAILOVER
Note:
Because a failover results in a transition of a standby database to the primary
role, it should be performed when the primary database has failed or is
unreachable and cannot be recovered in a timely manner. Failover may or may
not result in data loss depending on the protection mode in effect at the time of
the failover and whether the target standby database was synchronized with
the primary database.
Use the SWITCHOVER command if the primary database has not failed and you
want the current primary database and a standby database to switch roles with
no data loss.
Format
Command Parameters
database-name
The name of a physical, logical, or snapshot standby database that you want to fail
over to the primary database role.
Usage Notes
• Always try to perform a complete failover first unless Redo Apply has stopped at
the failover target due to an ORA-752 or ORA-600 [3020] error. If one of these errors
has occurred, then before proceeding follow the guidelines in "Resolving ORA-752
or ORA-600 [3020] During Standby Recovery" in My Oracle Support Note
1265884.1 at http://support.oracle.com. An immediate failover should only be
performed when a complete failover is unsuccessful or in the error case just noted.
• The specified standby database must be enabled before the primary database
fails. However, an enabled standby database that was shut down can be a
candidate for the failover operation. In this case, restart the standby database
using DGMGRL STARTUP command, then issue the FAILOVER command.
• The failover operates on the specified standby database and changes its role to a
primary database. Bystander standby databases (those not involved in the
failover) remain in the standby role.
• Before you issue the FAILOVER command, verify that you are connected to the
standby database that will become the new primary database. If necessary, issue
a CONNECT command to connect to the standby database to which you want to
failover.
• If the FAILOVER command is issued without any options, the standby database
chosen as the failover target applies all unapplied redo it has received before
changing to the primary role. This is referred to as a complete failover.
• If the broker configuration is operating in maximum protection mode, a manual
failover operation will force the protection mode to be maximum performance. The
redo transport service settings are unaffected. You need to restore the desired
protection mode for the resulting configuration after the failover operation.
7-42
Chapter 7
FAILOVER
Note:
With fast-start failover, the broker preserves the protection mode that was
in effect prior to the failover.
• If the FAILOVER command is issued with the IMMEDIATE option, no attempt is made to
apply any unapplied redo that has been received. This option more likely results in
lost application data even when standby redo log files are configured on the
standby database. Additionally, any remaining standby databases in the
configuration cannot function as such until they are reinstated or re-created. See
Reenabling Disabled Databases After a Role Change for more information.
• You can perform a manual failover or set up the broker to perform a fast-start
failover. See the ENABLE FAST_START FAILOVER command for information
about allowing the broker to automatically invoke failover, when conditions warrant
a failover.
• If fast-start failover is enabled, you can perform a complete manual failover only to
the fast-start failover target standby database and only if the fast-start failover
target standby database is synchronized with, or within the lag limit of, the primary
database, and only when the observer is started. You cannot perform an
immediate manual failover when fast-start failover is enabled.
• If Flashback Database was enabled on the former (failed) primary database prior
to the failover, the former primary database can be reinstated using the broker's
REINSTATE command (see the REINSTATE DATABASE command).
Caution:
You should shut down the original primary database if it still has any active
instances running prior to failing over.
See Also:
Reenabling Disabled Databases After a Role Change about reenabling the
original primary database so that it could serve as a standby database to
the primary database
Command Example
The following example performs a failover in which the standby database, South_Sales,
transitions to the primary role:
7-43
Chapter 7
HELP
Configuration Status:
WARNING
7.41 HELP
The DISPLAY command displays online help for the Data Guard command-line
interface.
Format
HELP [command_name];
Command Parameters
command_name
The command for which you want to display help information. If you do not specify a
command, then all commands are listed. The following commands are available:
@ Execute DGMGRL script file
! Host operating system command
/ Repeat the last command
-- Comment to be ignored by DGMGRL
add Adds a member to the broker configuration
connect Connects to an Oracle database instance
convert Converts a database from one type to another
create Creates a broker configuration
disable Disables a configuration, a member, or fast-start failover
edit Edits a configuration or a member
enable Enables a configuration, a member, or fast-start failover
exit Exits the program
failover Changes a standby database to be the primary database
help Displays description and syntax for a command
host Host operating system command
migrate Migrate a pluggable database from one configuration to another.
quit Exits the program
reinstate Changes a database marked for reinstatement into a viable standby
rem Comment to be ignored by DGMGRL
remove Removes a configuration or a member
set Set a property to a specified value
show Displays information about a configuration or a member
shutdown Shuts down a currently running Oracle database instance
spool store input and output of DGMGRL CLI in a file
sql Executes a SQL statement
7-44
Chapter 7
HOST or ! (exclamation point)
Usage Notes
• A database connection is not required to execute this command.
Command Example
The following example gets help on the EDIT commands.
DGMGRL> HELP EDIT
Format
HOST [command]
Or alternatively,
! [command]
Command Parameters
command
Represents an operating system command
Usage Notes
• If you simply enter HOST without specifying a command, then the DGMGRL console
becomes an operating system shell prompt until you issue the EXIT command to
return to the DGMGRL console.
• The HOST and ! commands take all the content entered on the command line
after them as input for the operating system shell prompt. See Command Example
2 below.
Command Examples
Example 1
The following example shows the HOST and ! commands being used to execute an
individual operating system command in the DGMGRL console.
7-45
Chapter 7
MIGRATE PLUGGABLE DATABASE
DGMGRL> ! DATE
Executing operating system command(s):" date"
Fri Oct 23 14:09:20 EDT 2015
DGMGRL>
Example 2
In the following example, both of the DATE commands are executed in the operating
system shell before control is returned to DGMGRL.
DGMGRL> ! DATE;DATE;
Executing operating system command(s):" date;date;"
Fri Oct 23 14:11:40 EDT 2015
Fri Oct 23 14:11:40 EDT 2015
DGMGRL>
7-46
Chapter 7
MIGRATE PLUGGABLE DATABASE
Format
Command Parameters
pdb-name
The name of the PDB to be migrated.
dest-cdb-name
The database unique name of the CDB to receive the PDB to be migrated.
XML-description-file
An XML file that contains the description of the PDB to be migrated. This file is
automatically created by the SQL statements executed by the MIGRATE PLUGGABLE
DATABASE command.
dest-cdb-user
The user name of the user that has SYSDBA access to the destination CDB.
dest-cdb-pass
The password associated with the user name specified for dest-cdb-user.
dest-cdb-connect-identifier
An Oracle Net connect identifier used to reach the destination CDB.
Usage Notes
• By default, when this command is used for PDB failover, the failover attempt is
rejected if there is a possibility of data loss. You can override this default behavior
by using the IMMEDIATE option.
• The IMMEDIATE option is ignored if the source database is a primary database.
• If a connect identifier is specified, then database credentials are used to
authenticate the user on the destination CDB.
• Operating system credentials cannot be used to authenticate the user on the
destination CDB. A connect identifier must be specified; a slash (/) is not
supported.
• For cases in which a slash (/) is used to specify a connect identifier (for example, /
@boston), the credentials are fetched from the wallet.
• The following options are available if you want to specify a connect string:
– /@dest-cdb-connect-identifier (credentials are fetched from the wallet)
7-47
Chapter 7
MIGRATE PLUGGABLE DATABASE
The following options are supported when you supply only a user name and
connect identifier:
– dest-cdb-user@dest-cdb-connect-identifier (uses database credentials)
• If you omit the connect string entirely from the command line, then you will be
prompted for a user name and password. The following options are supported:
– /@dest-cdb-connect-identifier (no prompt for password, credentials are
fetched from the wallet)
– dest-cdb-user@dest-cdb-connect-identifier (uses database credentials)
Command Examples
Example 1: Migrating a PDB From a Primary CDB
DGMGRL> MIGRATE PLUGGABLE DATABASE REGION1 TO CONTAINER NORTH_SALES_NEW USING
REGION1.xml
CONNECT AS sys/mypassword@NORTH_SALES_NEW;
Connected to "NORTH_SALES_NEW"
Connected.
7-48
Chapter 7
QUIT
database SOUTH_SALES.
Disabling media recovery for pluggable database REGION1.
Closing database SOUTH_SALES.
Restarting redo apply services on source multitenant container database SOUTH_SALES.
Succeeded.
Creating pluggable database REGION1 on multitenant container database
SOUTH_SALES_NEW.
Opening pluggable database REGION1 on all instances of multitenant container
database SOUTH_SALES_NEW.
Unplugging pluggable database REGION1 from multitenant container database
NORTH_SALES.
Dropping pluggable database REGION1 from multitenant container database NORTH_SALES.
Succeeded.
7.44 QUIT
The QUIT command quits (exits) the Data Guard command-line interface.
Format
QUIT;
Command Parameters
None.
Usage Notes
• This command has the same effect as the EXIT command.
• A database connection is not required to execute this command. However, if you
are connected, this command breaks the connection.
Command Example
The following example shows how to quit (exit) the command-line interface.
DGMGRL> QUIT;
Format
Command Parameters
database-name
The name of the database that is to be reinstated in the broker configuration.
Usage Notes
• If the conditions for reinstatement described in Reinstating the Former Primary
Database in the Broker Configuration are not satisfied, the reinstatement will fail
with an appropriate error status and the specified database will remain disabled.
7-49
Chapter 7
REMOVE CONFIGURATION
• If the database-name specified is that of the old primary and fast-start failover is
enabled, the old primary database will be reinstated as a standby to the new
primary, and the fast-start failover environment will be updated to reflect the
availability of the new standby database. It will accept redo data from the new
primary database and be the target of a fast-start failover should the new primary
database fail. Reinstatement occurs automatically if the observer is running unless
the FastStartFailoverAutoReinstate configuration property is set to FALSE.
• This command does not require that fast-start failover be enabled. It can be used
to reinstate an old primary database after a complete manual failover has been
performed. It can also be used to reinstate a bystander standby database that had
been disabled after either a complete or immediate failover.
• Issue this command while connected to any database in the broker configuration,
except the database that is to be reinstated.
Command Example
The following example reinstates the North_Sales database as a standby database in
the broker configuration.
DGMGRL> REINSTATE DATABASE 'North_Sales';
Reinstating database "North_Sales", please wait...
Reinstatement of database "North_Sales" succeeded
Format
Command Parameters
None.
Usage Notes
• When you remove a broker configuration, management of all of the members
associated with that configuration is disabled.
• By default, the command removes the corresponding broker settings of the
LOG_ARCHIVE_DEST_n initialization parameter on the primary database and the
LOG_ARCHIVE_CONFIG initialization parameters on all members of the configuration.
To preserve these settings, use the PRESERVE DESTINATIONS option.
• This command does not remove or affect the actual primary or standby database
instances, databases, far sync instances, data files, control files, initialization
parameter files, server parameter files, or log files of the underlying Oracle Data
Guard configuration.
• You cannot remove the configuration when fast-start failover is enabled.
7-50
Chapter 7
REMOVE DATABASE
Command Examples
The following examples show a successful and an unsuccessful REMOVE CONFIGURATION
command.
Example 1
The following command shows how to remove configuration information from the
configuration file.
DGMGRL> REMOVE CONFIGURATION;
Removed configuration
DGMGRL> SHOW CONFIGURATION;
Error: ORA-16532: Data Guard broker configuration does not exist
Example 2
The following command is unsuccessful because fast-start failover is enabled.
DGMGRL> REMOVE CONFIGURATION;
Error: ORA-16654: fast-start failover is enabled
Failed.
Configuration - DRSolution
Configuration status:
SUCCESS
Format
Command Parameters
database-name
The name of the standby database that you want to remove from the broker
configuration.
Usage Notes
• An error is returned if you specify the name of the primary database in the broker
configuration.
7-51
Chapter 7
REMOVE FAR_SYNC
• By default, this command removes all references to the specified database from all
redo transport initialization parameters at each member of the configuration. To
preserve these settings, use the PRESERVE DESTINATIONS option.
• This command cannot be executed if fast-start failover is enabled and database-
name specifies the name of the target standby database.
Command Example
The following example shows how to remove a database from the Oracle Data Guard
broker configuration.
DGMGRL> SHOW CONFIGURATION;
Configuration - DRSolution
Configuration status:
SUCCESS
Configuration - DRSolution
Configuration status:
SUCCESS
Format
Command Parameters
far_sync_instance_name
The name of the far sync instance to be removed from the broker configuration. It
must match (case-insensitive) the value of the corresponding database
DB_UNIQUE_NAME initialization parameter.
7-52
Chapter 7
REMOVE INSTANCE
Usage Notes
• A far sync instance that has its RedoRoutes property set cannot be removed.
Command Example
The following example removes a far sync instance named dallas from the broker
configuration.
DGMGRL> REMOVE FAR_SYNC 'dallas';
Format
Command Parameters
instance-name
The name of the instance (SID) that you want to remove from the broker
configuration.
object-name
The name of the database or the far sync with which the instance-name is associated.
Usage Notes
• The broker automatically adds started instances to the broker configuration.
However, the broker does not automatically remove instances from the database.
The REMOVE INSTANCE command can be used to manually remove any instance that
no longer exists from the configuration.
• If the instance-name is not unique within the configuration, then you must specify
both the database-name or far sync-name, and the instance-name to fully identify
the instance.
• This command is rejected for an instance that is currently active in the broker
configuration.
• This command is rejected if this is the only instance currently associated with a
database or far sync.
Command Example
The following example shows how to remove an instance of the database.
DGMGRL> REMOVE INSTANCE 'south_sales3' ON DATABASE 'South_Sales';
Removed instance "south_sales3" from the database "South_Sales"
7-53
Chapter 7
REMOVE RECOVERY_APPLIANCE
Caution:
When you use the REMOVE RECOVERY_APPLIANCE command, the Recovery
Appliance profile information is deleted from the broker configuration file and
cannot be recovered.
Format
Command Parameters
object name
The name of the Recovery Appliance whose profile you want to remove from the
broker configuration.
Usage Notes
• By default, this command removes the corresponding broker settings of the
LOG_ARCHIVE_DEST_n initialization parameter on the database that was shipping redo
data to the Recovery Appliance and the LOG_ARCHIVE_CONFIG initialization parameter
on all databases in the configuration. To preserve these settings, use the PRESERVE
DESTINATIONS option.
Command Example
The following example shows how to remove a Recovery Appliance from a Data
Guard broker configuration.
DGMGRL> SHOW CONFIGURATION;
Configuration - DRSolution
Protection Mode: MaxPerformance
Members:
North_Sales - Primary database
South_Sales - Physical standby database
EnterpriseRecoveryAppliance - Oracle Backup Appliance
7-54
Chapter 7
SET ECHO
Format
Usage Notes
• None
Command Example
DGMGRL> SET ECHO ON;
DGMGRL> SHOW CONFIGURATION;
SHOW CONFIGURATION;
Configuration - DRSolution
Configuration Status:
SUCCESS
Format
Command Parameters
observer_name
The name of the observer that you want to be the master observer.
7-55
Chapter 7
SET MASTEROBSERVERHOSTS
Usage Notes
• If the specified observer name does not exist, an error message is returned and
the master observer is not changed
• When this command is issued, the actual switch does not happen until the next
time the primary contacts the target standby, usually within three seconds if fast-
start failover is enabled. You should use the SHOW OBSERVER command to verify that
the switch took place.
• For the manual setting to succeed, the following conditions must be met during the
next fast-start failover ping:
– The target standby is enabled and does not require reinstatement.
– There is no role change, reinstating, or fast-start failover target switch in
progress
Command Example
The following is an example of designating a new observer to be the master.
DGMGRL> SET MASTEROBSERVER TO boston-obsever;
Succeeded.
For each broker configuration in a specified group, if it has a backup observer running
on the target host, then set the master observer of this broker configuration to the
observer on the target host.
Format
Command Parameters
cfg_group_name
The name of a broker configuration group, on which you want to move the master
observer to the target host.
host-name
The target host to which you want to move the master observer for the broker
configurations in the specified group.
Usage Notes
• If no cfg_group_name is specified, then this command attempts to switch the
master observer to the specified host for all broker configurations defined in the
observer configuration file.
• The cfg_group_name cannot be the keyword ALL.
• The actual switch does not happen until the next time the primary contacts the
target standby in each broker configuration, usually within three seconds if fast-
7-56
Chapter 7
SET ObserverConfigFile
start failover is enabled. You should use the SHOW OBSERVERS command to verify that
the switch took place.
Command Example
DGMGRL> SET MASTEROBSERVERHOSTS FOR GRP_A TO dgnet0;
Format
Command Parameters
filename
The full path of an observer configuration file.
Usage Notes
• ObserverConfigFile is a DGMGRL runtime property. It neither resides in broker
configuration metadata nor is persisted to disk. If the observer configuration file
name is not observer.ora or it does not exist in the current working directory, then
you must specify the name every time you start a new DGMGRL client.
• The default value of the property ObserverConfigFile is observer.ora, and its
default location is in the working directory.
• When you issue this command, the name of the configuration file is changed even
if the file you specify does not exist or the content of the file is invalid.
Command Example
DGMGRL> SET ObserverConfigFile = /usr/oracle/observer.ora
The timestamp printing feature records the timestamp as you input each command at
the DGMGRL prompt. This information can be helpful with analysis of DGMGRL
console input and output.
Format
Usage Notes
• None
7-57
Chapter 7
SHOW ALL
Command Example
DGMGRL> SET TIME ON;
07/11/2017 09:28:21 DGMGRL> SHOW CONFIGURATION;
Configuration - DRSolution
Configuration Status:
SUCCESS
Format
SHOW ALL;
Usage Notes
• None
Command Example
DGMGRL> SHOW ALL;
debug ON
echo OFF
time OFF
observerconfigfile = observer.ora
Format
7-58
Chapter 7
SHOW CONFIGURATION
Command Parameters
property-name
The name of the property for which you want to display summary information.
See Oracle Data Guard Broker Properties for complete information about properties.
Usage Notes
• Use the SHOW CONFIGURATION VERBOSE command (or the SHOW FAST_START FAILOVER
command) to show the properties related to fast-start failover.
• You can optionally specify either VERBOSE or property-name, but not both.
• The SHOW CONFIGURATION command displays the status of the configuration and its
members as of the last time the health was evaluated. (The health of the
configuration and its members is evaluated once a minute.)
Specifying the VERBOSE keyword forces an immediate health evaluation of the
configuration and its members before the health information is displayed.
• During a rolling upgrade done using the PL/SQL package DBMS_ROLLING, the SHOW
CONFIGURATION command shows Transient logical standby database as the role of
the upgrade target, and ROLLING DATABASE MAINTENANCE IN PROGRESS as the
configuration status. See Example 3.
• The display highlights the current fast-start failover target with an asterisk (*) when
fast-start failover is enabled
Command Examples
Example 1: Showing a Summary of the DRSolution Configuration
The following example provides a summary of the DRSolution configuration for which
fast-start failover is disabled. The output shows a far sync instance named FS in the
broker configuration. The North_Sales database is shipping to FS, and FS is shipping to
South_Sales.
Configuration - DRSolution
Configuration Status:
SUCCESS (status updated 20 seconds ago)
7-59
Chapter 7
SHOW CONFIGURATION
Configuration - DRSolution
Properties:
FastStartFailoverThreshold = '30'
OperationTimeout = '30'
TraceLevel = 'USER'
FastStartFailoverLagLimit = '30'
CommunicationTimeout = '180'
ObserverReconnect = '0'
FastStartFailoverAutoReinstate = 'TRUE'
FastStartFailoverPmyShutdown = 'TRUE'
BystandersFollowRoleChange = 'ALL'
ObserverOverride = 'FALSE'
ExternalDestination1 = ''
ExternalDestination2 = ''
PrimaryLostWriteAction = 'CONTINUE'
ConfigurationWideServiceName = 'North_Sales_CFG'
Threshold: 30 seconds
Target: South_Sales
Observer: observer.example.com
Lag Limit: 30 seconds (not in use)
Shutdown Primary: TRUE
Auto-reinstate: TRUE
Observer Reconnect: (none)
Observer Override: FALSE
Configuration Status:
WARNING
Configuration Status:
ROLLING DATABASE MAINTENANCE IN PROGRESS
7-60
Chapter 7
SHOW CONFIGURATION WHEN PRIMARY IS
Format
Command Parameters
database-name
The name of the database for which you want to see what the redo transport
configuration would be if it were the primary database.
Usage Notes
• Use the SHOW CONFIGURATION WHEN PRIMARY IS command to show the redo transport
configuration that would be in effect if the specified database were the primary
database. You can use this information to identify ahead of time any redo transport
configurations that would be incorrect after a role change.
Command Example
The following example provides a summary of the DRSolution configuration before and
after a role change to the South_Sales database.
DGMGRL> SHOW CONFIGURATION;
Configuration - DRSolution
Configuration Status:
SUCCESS
Members:
South_Sales - Primary database
South_FS - Far Sync
North_Sales - Physical standby database
7-61
Chapter 7
SHOW DATABASE
These displays are based upon the RedoRoutes property being set as follows for each
member:
DGMGRL> SHOW DATABASE 'North_Sales' RedoRoutes;
RedoRoutes = '(LOCAL : North_FS)'
Format
Command Parameters
database-name
The name of the database for which you want to display information. The VERBOSE
keyword, if used, must come before the database-name or an error is returned.
property-name
The name of the property for which you want to display a value. If a property name is
specified, the output shows only the specified property (not all properties of the
database), regardless of whether or not the VERBOSE keyword is specified.
See Also:
Managing the Members of a Broker Configuration and Oracle Data Guard
Broker Properties for information about properties.
Usage Notes
• The SHOW DATABASE command shows a brief summary of the database. TheSHOW
DATABASE VERBOSE command shows properties of the database in addition to the
brief summary. They both show the status of the database.
• The SHOW DATABASE VERBOSE command shows the locations of the Oracle alert log
file and of the broker log file. The broker log file is created in the same directory as
the alert log and is named drc<$ORACLE_SID>.log.
• The SHOW DATABASE VERBOSE command shows database-specific properties and
instance-specific properties. For a non-Oracle RAC database, the values of the
instance-specific properties are those of the only instance of the database. For an
7-62
Chapter 7
SHOW DATABASE
Oracle RAC database, the values of the instance-specific properties will not be
shown, although the property names are still listed. To see the instance-specific
values of these properties, use the SHOW INSTANCE command.
• The properties that the SHOW DATABASE VERBOSE command shows depend on the
database role and the configuration composition:
– For the primary database, properties specific to physical or snapshot standby
databases are shown only if there is at least one physical or snapshot standby
database in the configuration. The properties specific to logical standby
databases are shown only if there is at least one logical standby database in
the configuration.
– For physical and snapshot standby databases, properties specific to logical
standby databases are not shown.
– For logical standby databases, properties specific to physical and snapshot
standby databases are not shown.
• This command is rejected if you use the SHOW DATABASE database-name property-
name command to show an instance-specific property in an Oracle RAC database.
• During a rolling upgrade done using the PL/SQL package DBMS_ROLLING, the SHOW
DATABASE command shows a WARNING with an appropriate ORA error for the upgrade
target and the trailing or leading standbys, depending on the current rolling
upgrade progress. See Example 3.
Command Examples
Example 1: Showing Database Information in Abbreviated Format
This example shows database information in an abbreviated format.
DGMGRL> SHOW DATABASE South_Sales;
Database - South_Sales
Database Status:
SUCCESS
Database - North_Sales
Role: PRIMARY
Intended State: TRANSPORT-ON
Instance(s):
c0
7-63
Chapter 7
SHOW DATABASE
Properties:
DGConnectIdentifier = 'North_Sales.example.com'
ObserverConnectIdentifier = ''
LogXptMode = 'ASYNC'
RedoRoutes = ''
DelayMins = '0'
Binding = 'optional'
MaxFailure = '0'
MaxConnections = '1'
ReopenSecs = '300'
NetTimeout = '30'
RedoCompression = 'DISABLE'
LogShipping = 'ON'
PreferredApplyInstance = ''
ApplyInstanceTimeout = '0'
ApplyLagThreshold = '0'
TransportLagThreshold = '0'
TransportDisconnectedThreshold = '0'
ApplyParallel = 'AUTO'
ApplyInstances = '0'
StandbyFileManagement = 'AUTO'
ArchiveLagTarget = '0'
LogArchiveMaxProcesses = '5'
LogArchiveMinSucceedDest = '1'
DataGuardSyncLatency = '0'
DbFileNameConvert = 'dbs/cdb2_, dbs/cdb1_, dbs/bt, dbs/t, dbs/
cdb4_, dbs/cdb1_, dbs/dt, dbs/t'
LogFileNameConvert = 'dbs/cdb2_, dbs/cdb1_, dbs/bt, dbs/t, dbs/
cdb4_, dbs/cdb1_, dbs/dt, dbs/t'
FastStartFailoverTarget = ''
InconsistentProperties = '(monitor)'
InconsistentLogXptProps = '(monitor)'
SendQEntries = '(monitor)'
LogXptStatus = '(monitor)'
RecvQEntries = '(monitor)'
PreferredObserverHosts = ''
StaticConnectIdentifier = '(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)
(HOST=North_Sales.example.com)(PORT=2840))
(CONNECT_DATA=(SERVICE_NAME=North_Sales_DGMGRL.example.com)
(INSTANCE_NAME=north_sales1)(SERVER=DEDICATED)))'
StandbyArchiveLocation = 'USE_DB_RECOVERY_FILE_DEST'
StandbyAlternateLocation = ''
LogArchiveTrace = 255
LogArchiveFormat = 'db1r_%d_%t_%s_%R.arc'
TopWaitEvents = '(monitor)'
Database Status:
SUCCESS
Example 3: Sample Output for the Target Database During a Rolling Upgrade
Performed With the DBMS_ROLLING Package
DGMGRL> SHOW DATABASE South_Sales;
Database - South_Sales
7-64
Chapter 7
SHOW FAR_SYNC
Database Warning(s):
ORA-16866: database converted to transient logical standby database for rolling
database maintenance
Database Status:
WARNING
Example 4: Sample Output For the Leading Standby During a Rolling Upgrade
Performed With the DBMS_ROLLING Package
DGMGRL> SHOW DATABASE South_Sales;
Database - South_Sales
Database Warning(s):
ORA-16881: standby database is not protecting the current primary database
during rolling database maintenance
Database Status:
WARNING
Format
Command Parameters
far_sync_instance_name
The name of the far sync instance for which the broker will show information. It must
match (case-insensitive) the value of the corresponding database DB_UNIQUE_NAME
initialization parameter.
7-65
Chapter 7
SHOW FAR_SYNC
property-name
The name of the property for which you want to display a value. If a property name is
specified, the output shows only the specified property (not all properties of the far
sync), regardless of whether or not the VERBOSE keyword is specified.
See Also:
Managing the Members of a Broker Configuration and Oracle Data Guard
Broker Properties for information about properties.
Command Examples
Example 1: Sample SHOW FAR_SYNC Output Without VERBOSE
The following example shows sample output from this command:
DGMGRL> SHOW FAR_SYNC FS;
Far Sync - FS
Far Sync - FS
Properties:
DGConnectIdentifier = 'fs.example.com'
LogXptMode = 'sync'
RedoRoutes = '(North_Sales : South_Sales)
(South_Sales : North_Sales)'
Binding = 'optional'
MaxFailure = '0'
MaxConnections = '1'
ReopenSecs = '300'
NetTimeout = '30'
RedoCompression = 'DISABLE'
LogShipping = 'ON'
TransportLagThreshold = '0'
TransportDisconnectedThreshold = '0'
LogArchiveMaxProcesses = '5'
LogArchiveMinSucceedDest = '1'
LogFileNameConvert = '...'
InconsistentProperties = '(monitor)'
7-66
Chapter 7
SHOW FAST_START FAILOVER
InconsistentLogXptProps = '(monitor)'
LogXptStatus = '(monitor)'
HostName = 'fs.example.com'
StandbyArchiveLocation = 'USE_DB_RECOVERY_FILE_DEST'
StandbyAlternateLocation = ''
LogArchiveTrace = '255'
LogArchiveFormat = 'db2r_%d_%t_%s_%R.arc'
TopWaitEvents = '(monitor)'
SidName = = '(monitor)'
Format
SHOW FAST_START FAILOVER;
Command Parameters
None.
Usage Notes
• The SHOW FAST_START FAILOVER command shows a summary of the fast-start failover
configuration.
•
The display shows the current fast-start failover target as well as candidate fast-
start failover targets. If the FastStartFailoverTarget property of the primary
database is set to ANY, then the candidate targets would include the standby
databases that are properly configured for the prevailing protection mode.
Command Examples
Example 1: This example shows the output when there is only one registered
observer running and there are multiple candidate targets.
DGMGRL> SHOW FAST_START FAILOVER;
Fast-Start Failover: ENABLED
Threshold: 30 seconds
Target: South_Sales
Candidate Targets: East_Sales, West_Sales
Observer: observer.example.com
Lag Limit: 30 seconds (not in use)
Shutdown Primary: TRUE
Auto-reinstate: TRUE
Observer Reconnect: (none)
Observer Override: FALSE
7-67
Chapter 7
SHOW INSTANCE
Example 2: This example shows the output when there are multiple registered
observers running. The asterisk symbol (*) indicates which observer is the master.
DGMGRL> SHOW FAST_START FAILOVER
Fast-Start Failover: ENABLED
Threshold: 30 seconds
Target: South_Sales
Observers: (*)observer1.example.com
observer2.example.com
observer3.example.com
Lag Limit: 30 seconds (not in use)
Shutdown Primary: TRUE
Auto-reinstate: TRUE
Observer Reconnect: (none)
Observer Override: FALSE
Format
Command Parameters
instance-name
The name of the instance for which you want to display information. The VERBOSE
keyword, if used, must come before the instance name.
7-68
Chapter 7
SHOW INSTANCE
property-name
The name of the property for which you want to display a value. If a property name is
specified, the output shows only the specified property (not all properties), regardless
of whether or not the VERBOSE keyword is specified.
See Also:
Managing the Members of a Broker Configuration and Oracle Data Guard
Broker Properties for information about properties.
database-name | far-sync-name
The name of the database or far sync associated with the instance for which you want
to show information.
Usage Notes
• The SHOW INSTANCE command shows a brief summary of the instance. TheSHOW
INSTANCE VERBOSE command shows properties of the instance in addition to the brief
summary. They both show the status of the instance.
•
The SHOW INSTANCE VERBOSE command shows the locations of the Oracle alert log
file and of the broker log file. The broker log file is created in the same directory as
the alert log and is named drc<$ORACLE_SID>.log.
• The SHOW INSTANCE VERBOSE command only shows instance-specific properties.
• The properties that the SHOW INSTANCE VERBOSE command shows depend on the
database role and the configuration composition:
– For instances of the primary database, properties specific to physical or
snapshot standby instances are shown only if there is at least one physical or
snapshot standby database in the configuration. The properties specific to
logical standby instances are shown only if there is at least one logical standby
database in the configuration.
– For instances of physical or snapshot standby databases, properties specific
to logical standby instances are not shown.
– For instances of logical standby databases, properties specific to physical and
snapshot standby instances are not shown.
• The instance-name can be unique across the configuration. If instance-name is not
unique, you must specify both the database-name and the instance-name to fully
identify the instance.
Command Examples
Example 1: Showing Instance Information in Abbreviated Format
The following example shows information about a specific instance of a database.
DGMGRL> SHOW INSTANCE 'north_sales1';
Instance Status:
SUCCESS
7-69
Chapter 7
SHOW OBSERVER
Instance Status:
SUCCESS
FORMAT
SHOW OBSERVER;
Command Parameters
None
Usage Notes
• This command requires a DGMGRL session, which submits this command, to be
connected to a single configuration.
7-70
Chapter 7
SHOW ObserverConfigFile
Command Example
The following example SHOW OBSERVER command displays information about all
registered observers in the DRSolution broker configuration.
DGMGRL> SHOW OBSERVER;
Configuration - DRSolution
Primary: North_Sales
Active Target Standby: South_Sales
Format
SHOW ObserverConfigFile;
Command Parameters
None.
Usage Notes
• If the value of the ObserverConfigFile property is an empty string, then the output is
current_working_directory/observer.ora.
• The SHOW ObserverConfigFile command attempts to parse the file pointed by the
ObserverConfigFile property. If the file does not exist or parsing fails, then a
message is returned that the file is not usable.
Command Example
DGMGRL> SHOW ObserverConfigFile;
ObserverConfigFile=/usr/oracle/observer
observer configuration file parsing succeeded
7-71
Chapter 7
SHOW OBSERVERS
Format
Command Parameters
cfg_group_name
The name of a valid broker configuration group file for which you want to show
information about all running observers. Specifying this parameter results in
information being shown about observers for all configurations in the specified group.
The information shown by this command is the same as that shown by a SHOW
OBSERVER command on an individual configuration.
If a group name is not specified, then SHOW OBSERVERS alone is also a valid command. It
shows observer information for all broker configuration groups defined in the observer
configuration file.
The configuration group name cannot be ALL.
Usage Notes
• This command can be used to verify that a manually performed switch to a new
master observer was successful.
Command Example
DGMGRL> SHOW OBSERVERS;
ObserverConfigFile=observer.ora
observer configuration file parsing succeeded
Submit command SHOW OBSERVER using the connect identifier 'North_Sales'.
Connected to "North_Sales"
Configuration - DrSolution1
Primary: North_Sales
Target: South_Sales
Configuration - DRSolution2
Primary: East_Sales
Target: West_Sales
7-72
Chapter 7
SHOW RECOVERY_APPLIANCE
Format
Command Parameters
object name
The name of the Recovery Appliance for which you want to display information. The
VERBOSE keyword, if used, must come before the Recovery Appliance name or an error
is returned.
property name
The name of the property for which you want to display a value. If a property name is
specified, the output shows only the specified property (not all properties of the
Recovery Appliance), regardless of whether or not the VERBOSE keyword is specified.
Usage Notes
• The SHOW RECOVERY_APPLIANCE command shows a brief summary of the Recovery
Appliance. The SHOW RECOVERY_APPLIANCE VERBOSE command shows properties of
the Recovery Appliance in addition to the brief summary. They both show the
status of the database.
• The SHOW RECOVERY_APPLIANCE VERBOSE command shows Recovery Appliance-
specific properties.
Command Examples
Example 1: Recovery Appliance Information in Abbreviated Format
The following example shows Recovery Appliance information in an abbreviated
format.
DGMGRL> SHOW RECOVERY_APPLIANCE 'EnterpriseRecoveryAppliance';
Oracle Recovery Server - EnterpriseRecoveryAppliance
Transport Lag: 0 seconds
Redo Source: South_Sales
7-73
Chapter 7
SHUTDOWN
Transport Lag: 0
Redo Source: South_Sales
Properties:
DGConnectIdentifier = 'South_Sales.example.com'
LogXptMode = 'ASYNC'
DelayMins = '0'
Binding = 'optional'
MaxFailure = '0'
MaxConnections = '1'
ReopenSecs = '300'
NetTimeout = '30'
RedoCompression = 'DISABLE'
LogShipping = 'ON'
ArchiveLagTarget = '0'
LogArchiveMaxProcesses = '5'
LogArchiveMinSucceedDest = '1'
InconsistentProperties = '(monitor)'
InconsistentLogXptProps = '(monitor)'
StandbyAlternateLocation = ''
RedoSource = 'South_Sales'
Database Status:
SUCCESS
7.67 SHUTDOWN
Shuts down a currently running Oracle instance.
Format
Command Parameters
None.
Usage Notes
• Using the SHUTDOWN command with no arguments is equivalent to using the
SHUTDOWN NORMAL command.
Proceeds with the fastest possible shutdown of the database without waiting
for calls to complete or for users to disconnect from the database.
Uncommitted transactions are not rolled back. Client SQL statements being
processed are terminated. All users connected to the database are implicitly
disconnected, and the next database startup will require instance recovery.
You must use this option if a background process terminates abnormally.
7-74
Chapter 7
SPOOL
Caution:
If you use the ABORT option on the primary database when fast-start
failover is enabled and the observer is running, a fast-start failover may
ensue. Use the IMMEDIATE or NORMAL option to prevent an unexpected
fast-start failover from occurring.
– IMMEDIATE
Does not wait for current calls to complete or users to disconnect from the
database. Further connections are prohibited. The database is closed and
dismounted. The instance is shut down, and no instance recovery is required
on the next database startup.
– NORMAL
This is the default option. The process waits for users to disconnect from the
database. Further connections are prohibited. The database is closed and
dismounted. The instance is shut down, and no instance recovery is required
on the next database startup.
Command Example
The following command shuts down the primary database in normal mode.
DGMGRL> SHUTDOWN;
Database closed.
Database dismounted.
Oracle instance shut down.
7.68 SPOOL
The SPOOL command records the input and output of DGMGRL to a file.
Format
The SPOOL command has three possible formats:
SPOOL;
SPOOL OFF;
If you simply enter SPOOL at the DGMGRL command prompt, then the current spool file
name is displayed.
Otherwise, the available spooling options are defined as follows:
• CREATE—Create a new log file. If a spool file with the specified name already exists,
the SPOOL command fails.
• REPLACE—Replace the existing spool file of the name specified. This is the default
behavior if no option is specified.
• APPEND—Append the new log into the specified log file, if it exists. Otherwise create
a new one.
7-75
Chapter 7
SQL
Command Parameters
spool-file-name
The name of the file to which DGMGRL input and output will be written.
Usage Notes
• None
Command Example
The following example shows the output of the SPOOL command before and after
spooling is started.
DGMGRL> SPOOL;
not spooling currently
DGMGRL> SPOOL;
currently spooling to "mysession"
DGMGRL>
7.69 SQL
The SQL command executes a SQL statement or a PL/SQL stored procedure.
Format
SQL "sql_statmement"
Command Parameters
sql_statement
The SQL statement or PL/SQL stored procedure to be executed.
Usage Notes
• The SQL statement or PL/SQL stored procedure to be executed must be enclosed
in double quotation marks.
• Do not include a semi-colon (;) after the SQL statement to be executed.
• If the string that DGMGRL passes to PL/SQL contains a filename, then the
filename must be enclosed in single quotation marks and the entire string following
the SQL command must be enclosed in double quotation marks. For example, use
the following syntax:
SQL "CREATE TABLESPACE temp1 DATAFILE '?/oradata/trgt/temp1.dbf' SIZE 10M
TEMPORARY"
• You cannot execute SELECT statements.
Command Example
The following command opens the database.
7-76
Chapter 7
START OBSERVER
Format
Command Parameters
observer-name
A name to identify observers within the same Data Guard broker configuration.
• No two observers on the same Data Guard broker configuration can have the
same name.
• If no name is specified for the observer then a default observer name, the host
name of machine where the START OBSERVER command is issued, is used.
• An observer name is case-insensitive.
• The string "NONAME" cannot be used as an observer name.
observer-file
Specifies the path and name of the runtime data file. If not specified, then the file
name defaults to fsfo.dat and the path is the current working directory.
log-file
The full path name of the observer log file. Each observer has its own log file.
Usage Notes
• You can register up to three observers to monitor a single Data Guard broker
configuration. Each observer is identified by a name that you supply when you
issue the START OBSERVER command. See Installing and Starting the Observer.
• The optional clause TRACE_LEVEL IS lets you control the amount of tracing done and
written to the observer log file. The default value is USER, which limits the observer
log contents to tracing information about fast-start failover, status changes of the
primary and target standby database, and error/warning messages. Setting
TRACE_LEVEL to SUPPORT increases the amount of tracing information to include
lower-level information needed by Oracle Support Services.
• The Oracle Client Administrator kit, or the full Oracle Database Enterprise Edition
or Oracle Personal Edition kit must be installed on the observer computer to
monitor a broker configuration for which fast-start failover is to be enabled. See
Prerequisites for Enabling Fast-Start Failover for more information.
• The START OBSERVER command must be issued on the observer computer. Once the
observer is successfully started, control is not returned to the user until the
7-77
Chapter 7
START OBSERVER
7-78
Chapter 7
START OBSERVER IN BACKGROUND
If the SHOW OBSERVER command shows three registered observers and you attempt
to start an observer at a different location, then the command will fail with the
following error:
ORA-16647: could not start more than three observers
Command Examples
Example 1: Starting the Observer
The following example shows how to start the observer.
DGMGRL> CONNECT sysdg@North_Sales.example.com;
Password: password
Connected to "North_Sales"
Connected as SYSDG.
DGMGRL> START OBSERVER;
Observer started
You must set up Oracle Wallet or SSL to use CONNECT '/'. By setting up Oracle Wallet
or SSL, you can write a script to securely start and run the observer as a background
job without specifying database credentials in the script. When using Oracle Wallet as
a secure external password store, be sure to add credentials for both the primary and
fast-start failover target standby databases. The database connect string that you
specify when adding the credentials for each database must match the
ObserverConnectIdentifer or DGConnectIdentifier database property.
Format
7-79
Chapter 7
START OBSERVER IN BACKGROUND
Command Parameters
observer-name
The name to identify observers within the same data guard broker configuration.
• No two observers on the same Data Guard Broker configuration can have the
same name.
• If no name is specified for the observer then a default observer name, the host
name of machine where the START OBSERVER command is issued, is used.
• An observer name is case-insensitive.
• The string "NONAME" cannot be used as an observer name.
observer-file
Specifies the path and name of the runtime data file. If not specified, then the file
name defaults to fsfo.dat and the path is the current working directory.
log-file
The full path of the observer log file. Each observer has its own log file.
connect-identifier
The connect identifier for a database in the broker configuration that the fast-start
failover observer will monitor. Oracle wallet uses this identifier as the key to search
oracle wallet.
Usage Notes
• Even if the START OBSERVER command is submitted successfully, the observer might
fail to start due to credential problems, intermittent network connections, or failure
on observer registration. To verify that the observer started successfully, use the
SHOW OBSERVERS command or check the observer log file.
• This command ignores any connections you have made to a specific configuration
member using the CONNECT command. In other words, even if you have not
connected to a specific member in the broker configuration, you can still start an
observer by using the START OBSERVER IN BACKGROUND command.
• If you have connected to a specific configuration member before issuing the START
OBSERVER IN BACKGROUND command, then you can continue to use the connection
after the control is returned.
• If the observer-file parameter is not specified with the FILE IS parameter, then the
observer searches the current working directory for the fsfo.dat file. If it is not
found, then the observer creates a fsfo.dat file.
• If the log-file parameter is not specified, then a file named observer.log in the
current working directory is used as the observer log file. If this file does not exist,
it is created.
• The optional clause TRACE_LEVEL IS lets you control the amount of tracing done and
written to the observer log file. The default value is USER, which limits the observer
log contents to tracing information about fast-start failover, status changes of the
primary and target standby database, and error/warning messages. Setting
TRACE_LEVEL to SUPPORT increases the amount of tracing information to include
lower-level information needed by Oracle Support Services.
7-80
Chapter 7
START OBSERVING
Command Example
DGMGRL> START OBSERVER observer1 IN BACKGROUND
FILE IS /net/sales/dat/oracle/broker/fsfo.dat
LOGFILE IS /net/sales/dat/oracle/broker/observer.log
CONNECT IDENTIFIER IS sales_p;
Submitted command "START OBSERVER" using connect identifier "sales_p"
Format
Command Parameters
cfg_group_name
The name of a broker configuration group, in which you want to start one observer for
each broker configuration.
Usage Notes
• If no cfg_group_name is specified, then this command will start a new observer for
each configuration defined in the observer configuration file.
• The cfg_group_name cannot be the keyword ALL.
Command Example
DGMGRL> START OBSERVING;
ObserverConfigFile=/net/oracle/dataguard/observer.ora
observer configuration file parsing succeeded
Submitted command “START OBSERVER” using connect identifier "cfg1_cid".
Submitted command “START OBSERVER” using connect identifier "cfg2_cid".
Submitted command “START OBSERVER” using connect identifier "cfg3_cid".
7.73 STARTUP
The STARTUP command starts an Oracle database instance, and allows you to specify a
number of options.
7-81
Chapter 7
STARTUP
• NOMOUNT: starts the specified database instance without mounting the database.
Format
Command Parameters
filename
The name of the initialization parameter file to be used when starting the database
instance. If you do not specify the PFILE parameter option, then the default server
parameter file (specific to your operating system) is used.
open-options
The mode of access in which you want the specified database to start. The possible
modes are:
READ ONLY
READ WRITE
Usage Notes
• Using the STARTUP command with no arguments is equivalent to using the STARTUP
OPEN command.
• If you do not use the FORCE clause when you use the STARTUP command and the
current database instance is running, an error results. The FORCE clause is useful
when you are debugging or when error conditions are occurring. Otherwise, it
should not be used.
• Use the RESTRICT clause to allow only Oracle users with the RESTRICTED SESSION
system privilege to connect to the instance. Later, you can use the ALTER SYSTEM
command through SQL*Plus to disable the restricted session feature.
• If you do not use the PFILE clause to specify the initialization parameter file, the
STARTUP command uses the default server parameter file, if it exists. Otherwise, the
STARTUP command uses the default initialization parameter file. The default files are
platform specific.
See your operating system-specific documentation for more information about the
default parameter files.
• Use the OPEN clause to mount and open the specified database.
• The NOMOUNT clause starts the database instance without mounting the database.
You cannot use the NOMOUNT clause with the MOUNT or OPEN options.
7-82
Chapter 7
STOP OBSERVER
Command Examples
Example 1: Two Methods for Starting a Database Instance
The following examples show two different methods for starting a database instance.
Each command starts a database instance using the standard parameter file, mounts
the default database in exclusive mode, and opens the database.
DGMGRL> STARTUP;
DGMGRL> STARTUP OPEN;
Format
Command Parameters
observer-name
The name of the observer you want to stop. If a name is not specified and there is
only one registered observer for the configuration, then it will be stopped; if there is
more than one registered observer in the configuration, then an error message is
returned.
The ALL keyword stops all observers registered in this broker configuration.
Usage Notes
• You can issue this command while connected to any database in the broker
configuration.
• This command does not disable fast-start failover, but a fast-start failover cannot
be initiated in the absence of an observer.
7-83
Chapter 7
STOP OBSERVING
• Fast-start failover does not need to be enabled when you issue this command.
• If fast-start failover is enabled when you issue the STOP OBSERVER command, then
the primary and standby databases must be connected and communicating with
each other. Otherwise the following error is returned:
ORA-16636 fast-start failover target standby in error state, cannot stop observer
If connectivity does not exist between the primary and standby databases, you can
issue the DISABLE FAST_START FAILOVER FORCE command on the primary database
and then issue the STOP OBSERVER command. Note that disabling fast-start failover
with the FORCE option on a primary database that is disconnected from the observer
and the target standby database does not prevent the observer from initiating a
fast-start failover to the target standby database.
• If fast-start failover is not enabled when you issue the STOP OBSERVER command,
then only the primary database must be running when you stop the observer.
• The observer does not stop immediately when the STOP OBSERVER command is
issued. The observer does not discover it has been stopped until the next time the
observer contacts the broker.
As soon as you have issued the STOP OBSERVER command, you may enter the START
OBSERVER command again on any computer. You can start a new observer right
away, even if the old observer has not yet discovered it was stopped. Any attempt
to restart the old observer will fail, because a new observer has been started for
the broker configuration.
• The STOP OBSERVER command fails if a switch to a new fast-start failover target or
new master observer is underway.
• The STOP OBSERVER command fails if there are two or more registered observers
and you attempt to stop only the master.
Command Example
The following example stops all observers running in the broker configuration .
DGMGRL> STOP OBSERVER ALL;
Format
Command Parameters
cfg_group_name
The name of a broker configuration group, on which you want to stop local observers
running on this host (where DGMGRL is running).
TRACE_LEVEL
The optional clause TRACE_LEVEL IS lets you control the amount of tracing done and
written to the observer log file. The default value is USER, which limits the observer log
7-84
Chapter 7
SWITCHOVER
contents to tracing information about fast-start failover, status changes of the primary
and target standby database, and error/warning messages. Setting TRACE_LEVEL to
SUPPORT increases the amount of tracing information to include lower-level information
needed by Oracle Support Services.
Usage Notes
• If no cfg_group_name is specified, then this command stops all LOCAL observers
running on this host (where this DGMGRL session is running) for all broker
configurations defined in the observer configuration file.
• The cfg_group_name cannot be the keyword ALL.
Command Example
DGMGRL> STOP OBSERVING;
ObserverConfigFile=/net/oracle/dataguard/observer.ora
observer configuration file parsing succeeded
Submitted command "STOP OBSERVER HOST IS OBM1" using connect identifier cfg1_cid.
Submitted command "STOP OBSERVER HOST IS OBM1" using connect identifier cfg2_cid.
Submitted command "STOP OBSERVER HOST IS OBM1" using connect identifier cfg3_cid.
7.76 SWITCHOVER
When you issue the SWITCHOVER command, the current primary database becomes a
standby database, and the specified standby database becomes the primary
database.
This is known as a switchover operation.
Format
The WAIT option specifies that you want to wait for sessions to drain before proceeding
with the switchover. The broker determines the maximum drain_timeout value for all
currently active services and waits for up to that amount of time for all current client
requests to be processed, before proceeding with the switchover. The drain-timeout
value is an option that is specified on the SRVCTL utility's add service command. The
WAIT option has no effect on a single instance database; it is valid only when services
are configured with attributes related to Application Continuity in Oracle Clusterware.
You can also optionally specify the number of seconds to wait for sessions to drain.
The value you specify overrides the drain_timeout value.
7-85
Chapter 7
SWITCHOVER
Command Parameters
database-name
The name of the standby database you want to change to the primary database role.
timeout-in-seconds
The time allowed for resource draining to be completed, in seconds, before the
switchover operation proceeds.
Permitted values are "" (an empty string), 0 (zero), or any positive integer. The default
value is an empty string indicating that this option is not set. If the value is zero, then
draining occurs immediately. During the draining period, all current client requests are
processed, but new requests are not accepted.
Usage Notes
• If fast-start failover is enabled, you may switch over only to the fast-start failover
target standby database.
• The broker verifies that the primary and standby databases are in the following
states before starting the switchover:
– The primary database must be enabled and in the TRANSPORT-ON state so redo
transport services are started.
– The standby database must be enabled and in the APPLY-ON state, with log
apply services started.
• The broker allows the switchover to proceed as long as there are no redo transport
services errors for the standby database that you selected to participate in the
switchover. However, errors occurring for any other bystander standby database
will not prevent the switchover from proceeding.
• Switchover to a logical standby database is not allowed when the configuration is
operating in maximum protection mode.
• If the broker configuration is operating in either maximum protection mode or
maximum availability mode, the switchover maintains the protection mode even
after the operation (described in Before You Perform a Switchover Operation). The
switchover will not be allowed if the mode cannot be maintained because the
target standby database of the switchover was the only standby that satisfied the
protection mode requirement.
• If the standby database that is assuming the primary role is a physical standby
database, then the old primary database will be restarted after the switchover
completes. If the standby database is a logical standby database, then neither the
primary database nor the logical standby database is restarted.
• If the standby database that is assuming the primary role is a physical standby
database, then the original primary becomes a physical standby database.
• If the standby database that is assuming the primary role is a logical standby
database, then the original primary becomes a logical standby database.
• If an Oracle RAC primary database is becoming a physical standby database, all
but one instance of the primary database will be shut down before performing the
switchover. See Switchover for details.
• You cannot switchover to a snapshot standby database.
7-86
Chapter 7
SWITCHOVER
• If the standby database that is assuming the primary role is a logical standby
database and there are physical standby databases in the configuration, after the
switchover, the physical standby databases will be disabled.
Caution:
For this reason, Oracle generally recommends that you specify your
physical standby database for switchover instead of your logical standby
database. If you must switch over to your logical standby database, see
Reenabling Disabled Databases After a Role Change to re-create your
physical standby database.
If you intend to switch back to the original primary database relatively soon,
you may allow the physical and snapshot standbys to remain disabled.
Once you have completed the switchover back to the original primary, you
may then reenable the physical and snapshot standby databases since
they are still viable standbys for the original primary database.
Command Examples
Example 1: Successful Switchover From Physical to Primary
The following example shows a successful switchover in which the physical standby
database, South_Sales, transitions into the primary role.
DGMGRL> SWITCHOVER TO 'South_Sales';
Performing switchover NOW, please wait...
New primary database "South_Sales" is opening...
Operation requires shutdown of instance "north_sales1" on database "North_Sales"
Shutting down instance "north_sales1"...
ORA-01109: database not open
Database dismounted.
ORACLE instance shut down.
Operation requires startup of instance "north_sales1" on database "North_Sales"
Starting instance "north_sales1"...
ORACLE instance started.
Database mounted.
Switchover succeeded, new primary is "South_Sales"
7-87
Chapter 7
VALIDATE DATABASE
Note:
For DGMGRL to restart instances automatically, you must connect to the
database using the same credentials given in the last CONNECT command, even if
the last CONNECT command was used to connect to another database.
You must manually issue the SHUTDOWN and STARTUP commands to restart the
new primary and any standby instances that may have been shut down.
Format
VALIDATE DATABASE [VERBOSE] database-name;
Command Parameters
database-name
The name of the database for which you want to display information. The VERBOSE
keyword, if used, must come before the database-name or an error is returned.
Usage Notes
The VALIDATE DATABASE command shows a brief summary of the database, and reports
any errors or warnings that were detected. VALIDATE DATABASE VERBOSE shows
everything in the brief summary plus all items that were validated.
Command Examples
The examples in this section show what the VALIDATE DATABASE command output might
look like in both the brief and verbose forms for primary and standby databases.
The examples in this section show what the VALIDATE DATABASE command output might
look like in both the brief and verbose forms for primary and standby databases.
Example 1: VALIDATE DATABASE Output in Brief Format for a Primary
The following example shows brief output for a primary database:
DGMGRL> VALIDATE DATABASE 'South_Sales';
7-88
Chapter 7
VALIDATE DATABASE
Capacity Information:
Database Instances Threads
South_Sales 2 2
Transport-Related Information:
Transport On: Yes
7-89
Chapter 7
VALIDATE DATABASE
Capacity Information:
Database Instances Threads
South_Sales 2 2
West_Sales 2 2
Transport-Related Information:
Transport On: Yes
Gap Status: No Gap
Transport Lag: 0 seconds
Transport Status: Success
7-90
Chapter 7
VALIDATE DATABASE
1 4 5 Sufficient SRLs
2 4 5 Sufficient SRLs
7-91
Chapter 7
VALIDATE DATABASE
Capacity Information:
Database Instances Threads
South_Sales 2 2
North_Sales 2 2
Transport-Related Information:
Transport On: Yes
Gap Status: No Gap
Transport Lag: 0 seconds
Transport Status: Success
7-92
Chapter 7
VALIDATE DATABASE DATAFILE
Format
Command Parameters
database-name
The name of the database for which you want to display information. The VERBOSE
keyword, if used, must come before the database-name or an error is returned.
If the database to be validated is either the primary or ALL, then the data files for all
standby databases are compared with data files of the primary.
If the database to be validated is a standby database, then its data files are compared
with the data files of the primary.
datafile-name | datafile-number
You can specify a data file to be compared by name (datafile-name) or by number
(datafile-number).
7-93
Chapter 7
VALIDATE DATABASE DATAFILE
The datafile-name is the name of a specific date file that you want validated.
The datafile-number is the file identification number of a data file (as shown in the
FILE# column of the V$DATAFILE view).
output-file-name
A file generated on the server that you must check to determine if block comparison is
completed and whether there were any lost writes. Output files are created in the
diagnostics trace directory of the database being compared.
Usage Notes
• The VALIDATE DATABASE command shows a brief summary of the database, and
reports any errors or warnings that were detected.
• When the VALIDATE DATABASE command is issued, it immediately returns a message
that data file comparison has started on a database, but this does not mean that
data file comparison completed or that there were no lost-writes between data
files. You must check the output files that are generated to determine whether data
file comparison was completed, or if there were lost writes.
Command Example
Example: Using VALIDATE DATABASE DATAFILE to Compare Data Files
The following command would compare the data files on the standby to those on the
primary. Output would be sent to a file named dbcomp1.out.
DGMGRL> VALIDATE DATABASE boston DATAFILE ALL OUTPUT=dbcomp1.out;
Operation requires a connection to database "boston"
Connecting ...
Output files are created in /path/to/trace on host "standby-host"
******************************
Remote database chicago.
remote db role: primary database
Slave Id 0
Summary:
Different data block pairs: 66617
Details:
***************************************************
ID: Block Type Id
TOTAL: Total number of blocks found
DIFFV: Number of block pairs with different version
LWLOC: Lost Writes at Local
LWRMT: Lost Writes at Remote
SAMEV: Number of block pairs with same version
SAMEV&C: Number of block pairs with same version and checksum
DIFFPAIR: Number of block pairs with same version but different contents
ENCERR: Undecided blocks related to encryption/decrytion error.
e.g. Wallet is not open.
SKIPPED: Skipped blocks due to data corruption, direct load, etc
7-94
Chapter 7
VALIDATE DATABASE SPFILE
Format
Command Parameters
database-name
The name of the standby database for which you want to display information. The
VERBOSE keyword, if used, must come before the database-name or an error is
returned.
If the database to be validated is the primary database, then a message is returned
saying the command cannot be issued on a primary database.
If the database to be validated is a standby database, then the server parameter file
values on the primary database are compared with the server parameter file values
on the standby database.
Usage Notes
• The VALIDATE DATABASE SPFILE command reports No parameter differences found if
there are no differences and a list of the parameters with their differing values on
the primary and the specified standby databases.
• When the VALIDATE DATABASE SPFILE command is issued, it makes a connection to
the primary database and the specified standby database based on the respective
values of the DGConnectIdentifier property. The command fails if a connection
attempt cannot complete successfully.
Command Example
Example: Using VALIDATE DATABASE SPFILE to Compare Server Parameter
File Values
The following is sample output from the VALIDATE DATABASE SPFILE command when
there are no differences between the server parameter file values on the specified
standby database and the primary database:
DGMGRL> VALIDATE DATABASE chicago SPFILE;
Connecting to "boston".
Connecting to "chicago".
7-95
Chapter 7
VALIDATE FAR_SYNC
The following is sample output from the VALIDATE DATABASE SPFILE command when
there are differences (different values, or specified on one and not on the other)
between the server parameter file values on the specified standby database and the
primary database:
DGMGRL> VALIDATE DATABASE chicago SPFILE;
Connecting to "boston".
Connecting to "chicago".
aq_tm_processes:
boston (PRIMARY) : 8
chicago : 9
commit_point_strength:
boston (PRIMARY) : NOT SPECIFIED
chicago : 255
sec_max_failed_login_attempts:
boston (PRIMARY) : 2
chicago : NOT SPECIFIED
use_large_pages:
boston (PRIMARY) : TRUE
chicago : NOT SPECIFIED
DGMGRL>
Format
Command Parameters
far_sync_instance_name
The name of the far sync instance for which you want to display information. The
VERBOSE keyword, if used, must come before the far_sync_instance_name or an error is
returned.
database-name
The validation of the far sync instance is performed based on the specified database
being the primary database.
Usage Notes
The VALIDATE FAR_SYNC command shows a brief summary of the far sync instance and
reports any errors or warnings that were detected. The VALIDATE FAR_SYNC VERBOSE
command shows everything in the brief summary plus redo transport-related
information.
7-96
Chapter 7
VALIDATE FAR_SYNC
Command Examples
The examples in this section show what the VALIDATE FAR_SYNC command output might
look like in various scenarios.
Example 1: Brief VALIDATE FAR_SYNC Output
The following example shows brief output for a far sync instance:
DGMGRL> VALIDATE FAR_SYNC FS;
Thread # Online Redo Log Groups Standby Redo Log Groups Status
North_Sales FS
1 4 5 Sufficient SRLs
Thread # Online Redo Log Groups Standby Redo Log Groups Status
North_Sales FS
1 4 5 Sufficient SRLs
Transport-Related Information:
Transport On: Yes
Gap Status: No Gap
Transport Lag: 0 seconds (computed 0 seconds ago)
Transport Status: Success
Thread # Online Redo Log Groups Standby Redo Log Groups Status
South_Sales FS
1 4 5 Sufficient SRLs
7-97
Chapter 7
VALIDATE NETWORK CONFIGURATION
Format
VALIDATE NETWORK CONFIGURATION FOR { ALL | member name };
Command Parameters
member name
The name of the configuration member to validate.
Usage Notes
• This command also performs a check for the static connect identifier.
Command Examples
Example 1: Validating Network Configuration for a Specific Database
DGMGRL> VALIDATE NETWORK CONFIGURATION FOR North_Sales;
Succeeded.
Succeeded.
Succeeded.
Succeeded.
7-98
Chapter 7
VALIDATE STATIC CONNECT IDENTIFIER
Succeeded.
Succeeded.
Succeeded.
Succeeded.
Format
Command Parameters
database name
The name of a specific database to validate.
7-99
Chapter 7
VALIDATE STATIC CONNECT IDENTIFIER
Usage Notes
• None
Command Examples
Example 1: Validation of Static Connect Identifier For a Database on Which
Oracle Clusterware Is Configured
DGMGRL> VALIDATE STATIC CONNECT IDENTIFIER FOR North_Sales;
Succeeded.
Succeeded.
7-100
8
Oracle Data Guard Broker Properties
Use Oracle Data Guard broker properties to manage instances or the entire
configuration.
Broker configuration and database properties help you to view and control the
behavior of entire broker configurations, individual configuration members, redo
transport services, and log apply services.
• Configuration Properties
• Monitorable (Read-Only) Properties
• Configurable Properties
Properties have either configuration-wide scope, database-wide scope, far sync
instance-wide scope, or instance-specific scope. Configuration-wide properties control
the behavior of the broker on all members of the configuration. The values of such
properties apply uniformly across all members of the configuration.
Database-wide properties allow you to view or control the behavior of a specific
database. If the database (primary or standby) is an Oracle RAC database consisting
of multiple instances, then the value of such a property applies uniformly across all
instances of that database.
Far sync instance-wide properties allow you to view or control the behavior of a far
sync instance.
Instance-specific properties allow you to view or control the behavior of an individual
database instance. Such a property exists for all instances of an Oracle RAC
database, but its value can differ from one specific instance to another.
Note:
You can use the Oracle Data Guard broker command-line interface (DGMGRL)
to view or modify broker properties.
Oracle Enterprise Manager Cloud Control (Cloud Control) explicitly presents
some broker properties on the Edit Properties page. Information from other
properties can be implicitly incorporated into other Web pages displayed by
Cloud Control. See the individual description of each property for information
about how Cloud Control presents that property.
8-1
Chapter 8
Configuration Properties
A configuration property has configuration-wide scope; meaning that the value you set
for the property applies uniformly to each member in the configuration.
Configuration properties are set using the EDIT CONFIGURATION SET PROPERTY command,
as shown in the following examples.
Example 1
This example sets the FastStartFailoverThreshold configuration property to 90
seconds.
DGMGRL> EDIT CONFIGURATION SET PROPERTY FastStartFailoverThreshold=90;
Example 2
This example sets the ExternalDestination1 configuration property to point to a redo
transport destination with a service name of Sales and a DB_UNIQUE_NAME of chicago.
EDIT CONFIGURATION SET PROPERTY ExternalDestination1='SERVICE=Sales
DB_UNIQUE_NAME=chicago';
Note:
In general, quotation marks are not necessary around property values unless
the case you specify needs to be preserved. By default, DGMGRL lowercases
any string you supply, unless it is placed within quotation marks.
Quotation marks are required for any property values that include spaces or
punctuation characters (for example, RedoRoutes, LogFileNameConvert, or
DBFileNameConvert).
8-2
Chapter 8
Configuration Properties
8.1.1 BystandersFollowRoleChange
The BystandersFollowRoleChange configuration property establishes whether bystander
standby databases are evaluated during failover (value = ALL) or after failover (value =
NONE).
• ALL - During the failover process, the broker determines whether the bystander
standby databases are ahead of or behind the failover target standby (that is, the
standby that will be the new primary).
If the bystander standbys are ahead, they will be disabled with a status of
ORA-16661 as part of the failover operation. The bystander standbys must be
reinstated after failover completes. The broker reinstates a standby through a
flashback to the SCN at which the target standby became a primary database, and
sets up the redo transport configuration from the new primary to the standby.
If the bystander standbys are behind, then the broker simply sets up the redo
transport configuration from the soon-to-be-new-primary to these standbys and
completes the failover process.
• NONE - During the failover process, the broker does NOT evaluate the status of the
bystander standbys as part of the failover operation. They are marked as disabled
with a status of ORA-16661 so that they can be evaluated later. The broker simply
completes the failover to produce a new primary database as soon as possible.
After the failover is completed, you can reinstate the bystander standbys. During
reinstatement of a bystander, the broker determines whether the bystander is
ahead of, or behind, the new primary. If the bystander is ahead of the new primary,
then the broker automatically flashes back the standby to the SCN at which the
target standby became a primary database and sets up redo transport from the
new primary to the standby. (Even if a flashback is not required, the broker sets up
the redo transport configuration from the new primary to these standbys.)
The NONE option decreases the processing time for failover, but disables broker
management of all bystander databases in the configuration. If fast-start failover is
enabled, then the observer automatically reinstates the standby databases after
failover has completed. Otherwise, you will have to manually reinstate the standby
databases after failover has completed.
Category Description
Datatype String
Valid value ALL or NONE
Broker default ALL
Imported? No
Parameter class Not applicable
Role Primary and standby
Standby type Not applicable
Corresponds to Not applicable
Scope Broker configuration. This property will be consumed by broker on the
database that is the target of a complete failover.
8-3
Chapter 8
Configuration Properties
Category Description
Cloud Control name Not applicable
8.1.2 CommunicationTimeout
The CommunicationTimeout configuration property allows you to decide how many
seconds the broker should wait before timing out its network communication between
members in the configuration.
A value of zero indicates that a network communication should never be timed out.
Category Description
Datatype Integer
Valid values >= 0
Broker default 180 seconds
Imported? No
Parameter class Not applicable
Role Primary and standby
Standby type Not applicable
Corresponds to Not applicable
Scope Broker configuration. This property will be consumed by broker on all
databases in the configuration.
Cloud Control name Not applicable
8.1.3 ConfigurationWideServiceName
The ConfigurationWideServiceName configuration property is used to change the name
of the configuration-wide service.
The broker publishes a service on each member of a configuration with a unified
service name. The default service name of this configuration-wide service is
primarydbname_CFG, where the primary database name is appended with a suffix of _CFG.
The service name does not change after a role transition.
Category Description
Datatype String
Valid values • The characters are limited to the following: [a...z], [A...Z],
[0...9], and _
• The first character must be an alphanumeric character.
• There is a 30–character maximum.
Broker default primarydbname_CFG
Imported? No
Parameter class Not applicable
Role Primary and standby
Standby type Not applicable
Corresponds to Not applicable
8-4
Chapter 8
Configuration Properties
Category Description
Scope Configuration
Cloud Control name Not applicable
8.1.4 ExternalDestination1
The ExternalDestination1 configuration property is used to specify a redo transport
destination that can receive redo data from the current primary database.
To set up transport of redo data to the specified destination, the broker uses the
values specified for this parameter to define a LOG_ARCHIVE_DEST_n initialization
parameter on the primary database. The broker also monitors the health of the
transport to the specified destination.
After a role change, the broker automatically sets up a LOG_ARCHIVE_DEST_n initialization
parameter on the new primary database to ship redo data to the specified destination.
Note:
The ExternalDestination1 property requires that the database unique name
(DB_UNIQUE_NAME) be specified.
Category Description
Datatype String
Valid values Any LOG_ARCHIVE_DEST_n attributes, except the following:
• ALTERNATE
• GROUP
• PRIORITY
• VALID_FOR
See Oracle Data Guard Concepts and Administration for more
information about the LOG_ARCHIVE_DEST_n parameter.
Broker default Empty string
Imported? No
Parameter class Not applicable
Role Primary
Standby type Not applicable
Corresponds to Not applicable
Scope Configuration
Cloud Control name Not applicable
8-5
Chapter 8
Configuration Properties
Note:
The Externaldestination1 configuration property is available only in Oracle
Database 11g Release 2 (11.2.0.4) and in Oracle Database 12c Release 1
(12.1.0.2) and later.
8.1.5 ExternalDestination2
The ExternalDestination2 configuration property is used to specify a redo transport
destination that can receive redo data from the current primary database.
To set up transport of redo data to the specified destination, the broker uses the
values specified for this parameter to define a LOG_ARCHIVE_DEST_n initialization
parameter on the primary database. The broker also monitors the health of the
transport to the specified destination.
After a role change, the broker automatically sets up a LOG_ARCHIVE_DEST_n initialization
parameter on the new primary database to ship redo data to the specified destination.
Note:
The ExternalDestination2 property requires that the database unique name
(DB_UNIQUE_NAME) be specified.
Category Description
Datatype String
Valid values Any LOG_ARCHIVE_DEST_n attributes, except the following:
• ALTERNATE
• GROUP
• PRIORITY
• VALID_FOR
See Oracle Data Guard Concepts and Administration for more
information about the LOG_ARCHIVE_DEST_n parameter.
Broker default Empty string
Imported? No
Parameter class Not applicable
Role Primary
Standby type Not applicable
Corresponds to Not applicable
Scope Configuration
Cloud Control name Not applicable
8-6
Chapter 8
Configuration Properties
Note:
The Externaldestination2 configuration property is available only in Oracle
Database 11g Release 2 (11.2.0.4) and in Oracle Database 12c Release 1
(12.1.0.2) and later.
8.1.6 FastStartFailoverAutoReinstate
The FastStartFailoverAutoReinstate configuration property causes the former primary
database to be automatically reinstated if a fast-start failover was initiated because the
primary database was either isolated or had crashed.
To prevent automatic reinstatement of the former primary database in these cases, set
this configuration property to FALSE.
The broker never automatically reinstates the former primary database if a fast-start
failover was initiated because a user configuration condition was detected or was
requested by an application calling the DBMS_DG.INITIATE_FS_FAILOVER function.
Category Description
Datatype Boolean
Valid value TRUE or FALSE
Broker default TRUE
Imported? No
Parameter class Not applicable
Role Primary and standby
Standby type Not applicable
Corresponds to Not applicable
Scope Broker configuration. This property will be consumed by the observer
after fast-start failover has been enabled.
Cloud Control name Automatically Reinstate Primary
8.1.7 FastStartFailoverLagLimit
The FastStartFailoverLagLimit configuration property establishes an acceptable limit,
in seconds, that the standby is allowed to fall behind the primary in terms of redo
applied.
If the limit is reached, then a fast-start failover is not allowed. The lowest possible
value is 5 seconds.
This property is used when fast-start failover is enabled and the configuration is
operating in maximum performance mode.
Category Description
Datatype Integer
Valid value Integral number of seconds. Must be greater than, or equal to, 5.
8-7
Chapter 8
Configuration Properties
Category Description
Broker default 30 seconds
Imported? No
Parameter class Not applicable
Role Primary and standby
Standby type Not applicable
Corresponds to Not applicable
Scope Broker configuration. This property will be consumed by the
primary database after fast-start failover has been enabled.
Cloud Control name Lag Limit
8.1.8 FastStartFailoverPmyShutdown
The FastStartFailoverPmyShutdown configuration property causes the primary database
to shut down under certain conditions.
The primary database shuts down if fast-start failover is enabled and
V$DATABASE.FS_FAILOVER_STATUS indicates the primary has been STALLED for longer than
FastStartFailoverThreshold seconds. In such a situation, it is likely that the primary has
been isolated and a fast-start failover has already occurred. A value of TRUE helps to
ensure that an isolated primary database cannot satisfy user queries.
Setting this property to FALSE will not prevent the primary database from shutting down
if a fast-start failover occurred because a user configuration condition was detected or
was requested by an application by calling the DBMS_DG.INITIATE_FS_FAILOVER function.
Category Description
Datatype Boolean
Valid value TRUE or FALSE
Broker default TRUE
Imported? No
Parameter class Not applicable
Role Primary and standby
Standby type Not applicable
Corresponds to Not applicable
Scope Broker configuration. This property will be consumed by the primary
database after fast-start failover has been enabled.
Cloud Control name Automatically Shutdown Primary
8-8
Chapter 8
Configuration Properties
8.1.9 FastStartFailoverThreshold
The FastStartFailoverThreshold configuration property defines the number of seconds
the master observer attempts to reconnect to the primary database before initiating a
fast-start failover.
(If there is only one observer, then by default it is considered the master. The time
interval starts when the observer first loses connection with the primary database. If
the observer is unable to regain a connection to the primary database within the
specified time, then the observer initiates a fast-start failover to the target standby
database. See Task 4 in Enabling Fast-Start Failover for more information about
setting this property.
The observer ignores the threshold completely if a configurable fast-start failover
condition is detected or an application has requested that fast-start failover be initiated.
For help in determining an appropriate value for this property, you can use the
information provided in the V$FS_OBSERVER_HISTOGRAM view. This view displays statistics
that are based on the frequency of successful pings between the observer and primary
database for different time intervals. (This view is available in Oracle Database 12c
Release 1 (12.1.0.2) and later. It is also available in Oracle Database 11g Release 2
(11.2.0.4), but not in Oracle Database 12c Release 1 (12.1.0.1).) See Oracle
Database Reference for a description of the V$FS_OBSERVER_HISTOGRAM view.
Category Description
Datatype Integer
Valid value Integral number of seconds. Must be greater than, or equal to, 6.
Broker default 30 seconds
Imported? No
Parameter class Not applicable
Role Target standby database that is about to fail over to the primary role
Standby type Not applicable
Corresponds to Not applicable
Scope Broker configuration. This property will be consumed by the observer
after fast-start failover has been enabled.
Cloud Control name Cloud Control presents this as "Failover Threshold" on the Oracle Data
Guard Overview page.
8.1.10 ObserverOverride
The ObserverOverride configuration property, when set to TRUE, allows an automatic
failover to occur when the observer has lost connectivity to the primary.
This is the behavior even if the standby has a healthy connection to the primary.
Category Description
Datatype Boolean
Valid values TRUE or FALSE
8-9
Chapter 8
Configuration Properties
Category Description
Broker default FALSE
Imported? No
Parameter class Not applicable
Role Primary and standby
Standby type Not applicable
Corresponds to Not applicable
Scope Broker configuration. This property will be consumed by the observer
after fast-start failover has been enabled.
Cloud Control name Not applicable
8.1.11 ObserverReconnect
The ObserverReconnect configuration property specifies how often the observer
establishes a new connection to the primary database.
When this property is set to the default value of 0, the observer creates and maintains
a connection to the primary database, but it does not periodically create a new
connection to the primary database. While this eliminates the processing overhead
associated with periodically establishing a new observer connection to the primary
database, it also prevents the observer from detecting that it is not possible to create
new connections to the primary database. Oracle recommends that this property be
set to a value that is small enough to allow timely detection of faults at the primary
database, but large enough to limit the overhead associated with periodic observer
connections to an acceptable level.
Category Description
Datatype Integer
Valid values Integral number of seconds. Must be greater than, or equal to, 0.
Broker default 0
Imported? No
Parameter class Not applicable
Role Primary and standby
Standby type Not applicable
Corresponds to Not applicable
Scope Broker configuration. This property will be consumed by the observer
after fast-start failover has been enabled.
Cloud Control name Not applicable
8.1.12 OperationTimeout
The OperationTimeout configuration property specifies the maximum amount of time the
broker should wait for health check, get monitorable property, and set property
operations to complete.
8-10
Chapter 8
Configuration Properties
Category Description
Datatype Integer
Valid values >= 30 and <= 3600
Broker default 30 seconds
Imported? No
Parameter class Not applicable
Role Primary and standby
Standby type Not applicable
Corresponds to Not applicable
Scope Broker configuration. This property will be consumed by broker on all
databases in the configuration.
Cloud Control name Not applicable
8.1.13 PreferredObserverHosts
The PreferredObserverHosts configurable property allows you to list the hosts that you
would prefer as hosts for the master observer when that database is in the primary
role.
The value of this property can be changed at any time, regardless of whether Fast-
Start Failover is enabled or not, or whether the observer is in an OBSERVED state.
However, the change does not affect the location of the master observer until the next
role change.
If this property is set, then after a role change the broker takes the following steps:
1. Checks whether the current master observer is running on a host in the list
specified by the PreferredObserverHosts property of the new primary. If yes, stop
here; otherwise, go to step 2.
2. Scans the list from the beginning to look for a host where one observer is running,
and connects to the primary and target standby databases. If found, go to step 3;
otherwise, stop here.
3. Attempts to switch the master observer to the host found in step 2. If switching
fails, no other hosts are tried.
Category Description
Data type String
Valid value A character string that contains one or more host names,
separated by comma:
host_name_1 [,host_name_n]
8-11
Chapter 8
Configuration Properties
Category Description
Role Primary, standby
Standby type Physical standby and logical standby
Corresponds to Not applicable
Scope Database
Cloud Control name Not applicable
8.1.14 PrimaryLostWriteAction
The PrimaryLostWriteAction configuration property determines what action is taken if a
standby database detects that a lost write has occurred at the primary database.
Note:
The PrimaryLostWriteAction configuration property is available only in Oracle
Database 11g Release 2 (11.2.0.4) and in Oracle Database 12c Release 1
(12.1.0.2) and later.
Diagnostic information is written to the database alert and broker logs at the primary
database and at the standby database where the lost write was detected.
If a lost write occurs at the primary database, then follow the guidelines in "Resolving
ORA-752 or ORA-600 [3020] During Standby Recovery" in My Oracle Support Note
1265884.1 located at http://support.oracle.com.
8-12
Chapter 8
Configuration Properties
Note:
The DB_LOST_WRITE_PROTECT database initialization parameter must be set to
TYPICAL or FULL at the primary database and at each standby database in the
configuration to ensure that lost primary writes can be detected by all standby
databases in the configuration.
Category Description
Datatype String
Valid values CONTINUE, SHUTDOWN, FAILOVER, or FORCEFAILOVER
Broker default CONTINUE
Imported? No
Parameter class Not applicable
Role Primary and standby
Standby type Not applicable
Corresponds to Not applicable
Scope Broker configuration
Cloud Control name Not applicable
8.1.15 TraceLevel
The TraceLevel configuration property is used to control the amount of tracing
performed by the broker for every member in the configuration.
Setting the property to USER limits the tracing to completed operations and to any
warning or error messages resulting from an operation or health check. Setting the
property to SUPPORT increases the amount of tracing to include lower-level information
needed by Oracle Support Services.
Category Description
Datatype String
Valid values USER, SUPPORT
Broker default USER
Imported? No
Parameter class Not applicable
Role Primary and standby
Standby type Not applicable
Corresponds to Not applicable
Scope Database
Cloud Control name Not applicable
8-13
Chapter 8
Monitorable (Read-Only) Properties
Note:
Information for monitorable properties can be seen only when broker
management of the entity is enabled. Cloud Control displays the information
obtained from these properties on the Property page.
If the database is an Oracle RAC database, the output values of some properties may
also show instance-specific information. For example if the primary database is an
Oracle RAC database, LogXptStatus may show Instance1 transmitting redo data to
Standby2 has an error and Instance2 transmitting redo data to Standby4 has an error.
8-14
Chapter 8
Monitorable (Read-Only) Properties
The database unique name (DB_UNIQUE_NAME) of the standby database or far sync
instance to which this redo transport services property pertains.
• PROPERTY_NAME
The name of the redo transport services property with an inconsistent value.
• MEMORY_VALUE
The runtime value being used in the database or far sync instance.
• BROKER_VALUE
The value of the redo transport services property saved in the broker configuration
file.
8-15
Chapter 8
Monitorable (Read-Only) Properties
The value identifying the SID for the instance on the primary database.
• STANDBY_DATABASE_NAME
The database unique name (DB_UNIQUE_NAME) of the standby database or far sync
instance.
• ERROR
The text of the redo transport error. If there is no error, the field is empty.
Each entry in the table indicates the status of redo transport services on one redo
source to one redo destination.
The error status can be an empty string, which indicates there is no error.
In the following example, the STATUS from South_Sales is empty because there is no
error for the South_Sales destination. The South_Report destination returned the
ORA-01034 message.
• STATUS_CODE: Status (or Oracle error code) belonging to the STATUS message
• STATUS: Description of the current activity of the process or the reason why log
apply services stopped
The transaction IDs and status information are separated by a string of number signs
(###).
This property pertains to a logical standby database.
8-16
Chapter 8
Monitorable (Read-Only) Properties
The MAX_SGA is the maximum system global area and MAX_SERVERS is the maximum
number of parallel query servers. These values are separated by a string of number
signs (###) in the LsbyParameters property.
The STATUS column is set to one of the following values for a log file on a logical
standby database:
– NOT_APPLIED: No redo records in this log file have been applied.
– PARTIALLY_APPLIED: Some of the redo records in this log file have been applied
while others have not.
– COMMITTED_TRANSACTIONS_APPLIED: This status value only applies to a logical
standby database. All redo records belonging to the committed transactions
have been applied. Redo records belonging to uncommitted transactions have
not been read by LogMiner and may still be needed when the transactions are
committed in the future. Therefore, it is not safe yet to discard this online redo
log file.
• RESETLOGS_ID
The first time when the online redo log file was written to the primary database
• TIME_COMPLETED
The next time when the log file was archived on the primary database
(corresponds to the NEXT_CHANGE# column)
• FIRST_CHANGE#
8-17
Chapter 8
Monitorable (Read-Only) Properties
• NEXT_CHANGE#
Note:
Cloud Control displays this information on the Log File Details page.
The value can be empty or it can contain the database unique name
(DB_UNIQUE_NAME) of a standby database. If empty, the STATUS column will contain a
value of CURRENT or NOT_ARCHIVED.
• STATUS
– NOT_ARCHIVED: A completed online redo log file that has not been archived
locally.
– ARCHIVED: A completed log file that has been archived locally but has not been
transmitted to the standby database specified in the STANDBY_NAME column.
8-18
Chapter 8
Monitorable (Read-Only) Properties
The table contains exactly one row with the value of STATUS=CURRENT. There can be
multiple rows with the value STATUS=ARCHIVED or STATUS=NOT_ARCHIVED.
• RESETLOGS_ID
The log sequence number. Multiple rows may have the same LOG_SEQ value (for
different STANDBY_NAME values).
• TIME_GENERATED
The first time when the online redo log file was written to the primary database.
• TIME_COMPLETED
The next time when the log file was archived on the primary database
(corresponds to the NEXT_CHANGE# column).
• FIRST_CHANGE#
Note:
Cloud Control displays this information on the Log File Details page.
8-19
Chapter 8
Configurable Properties
8.2.8 TopWaitEvents
The TopWaitEvents monitorable property specifies the 5 events with the longest waiting
time in the specified instance.
The events and their waiting time are retrieved from V$SYSTEM_EVENT. Each instance in
the configuration has this property. This property is an instance-specific monitorable
property. The table contains the following columns in the order shown:
• Event
The system wait event.
• Wait Time
The total amount of time waited for this event in hundredths of a second.
The following example shows output from a SHOW INSTANCE command:
DGMGRL> SHOW INSTANCE north_sales1 'TopWaitEvents';
TOP SYSTEM WAIT EVENTS
Event Wait Time
rdbms ipc message 671350
SQL*Net message from client 62390
pmon timer 47897
Queue Monitor Wait 43016
wakeup time manager 38508
8-20
Chapter 8
Configurable Properties
8-21
Chapter 8
Configurable Properties
See Also:
Managing the Members of a Broker Configuration for more information about
property management
Note:
When a broker configuration with its primary database is created and members
are added to the configuration, the broker imports existing settings from the
members to set many of the properties. If importing an existing setting fails, or if
a property value is not imported, then the broker uses a broker default value.
The default values and whether or not a property is imported is indicated within
each property description.
• LOG_ARCHIVE_DEST_STATE_n
• ARCHIVE_LAG_TARGET
• DB_FILE_NAME_CONVERT
• LOG_ARCHIVE_FORMAT
• LOG_ARCHIVE_MAX_PROCESSES
• LOG_ARCHIVE_MIN_SUCCEED_DEST
• LOG_ARCHIVE_TRACE
• LOG_FILE_NAME_CONVERT
• STANDBY_FILE_MANAGEMENT
8-22
Chapter 8
Configurable Properties
The broker also uses configurable property settings to manage how apply is to be
started. Therefore, the following SQL statements are managed automatically by the
broker:
• ALTER DATABASE RECOVER MANAGED STANDBY DATABASE
The broker sets the following apply parameters on a logical standby automatically; you
should not manually set them:
• MAX_EVENTS_RECORDED
• MAX_SERVERS
• MAX_SGA
• PRESERVE_COMMIT_ORDER
• RECORD_APPLIES_DDL
• RECORD_SKIP_DDL
• RECORD_SKIP_ERRORS
8.3.1 ApplyInstances
The ApplyInstances property lets you specify how many physical standby instances run
Redo Apply.
As of Oracle Database 12c Release 2 (12.2.0.1), a new INSTANCES keyword is available
on the SQL ALTER RECOVER MANAGED STANDBY DATABASE statement (only for Oracle Real
Application Clusters (Oracle RAC) or Oracle RAC One Node databases). When used,
it causes Redo Apply to run on each active running physical standby instance that is
running in the same mode as the instance on which Redo Apply was started. You can
specify ALL or you can specify a specific number to restrict the number of instances
that Redo Apply uses. If a database has already been set up to run Redo Apply on
multiple instances, then you can use the Data Guard broker property ApplyInstances to
restrict the number of instances that are involved in Redo Apply on an Oracle RAC
physical standby database.
See Also:
Category Description
Datatype Integer
8-23
Chapter 8
Configurable Properties
Category Description
Valid values 0 to 16, ALL
• ALL: indicates that redo apply will be started on
all currently active instances
• 0 and 1: recovery will be started in single
instance mode.
• >1: indicates that redo apply should not run on
any more than the number of instances
specified.
Broker default The default is 0.
Imported? Yes
Parameter class Not applicable
Role Standby
Standby type Physical standby
Corresponds to INSTANCES keyword of ALTER DATABASE RECOVER
MANAGED STANDBY DATABASE command.
Scope Database
Cloud Control name Not applicable
8.3.2 ApplyInstanceTimeout
The ApplyInstanceTimeout configurable property specifies the number of seconds the
broker waits after detecting the current apply instance failed before initiating the apply
instance failover.
Category Description
Datatype Integer
Valid values >=0 (seconds)
Broker default 0 (results in immediate apply instance failover)
Imported? No
Parameter class Not applicable
Role Standby, Recovery Appliance
Standby type Physical, logical, Recovery Appliance
Corresponds to Not applicable
Scope Database
Cloud Control name Not applicable
8.3.3 ApplyLagThreshold
The ApplyLagThreshold configurable property generates a warning status for a logical
or physical standby when the member's apply lag exceeds the value specified by the
property.
The property value is expressed in seconds. A value of 0 seconds results in no
warnings being generated when an apply lag exists.
8-24
Chapter 8
Configurable Properties
Category Description
Datatype Number
Valid values >=0
Broker default 30 seconds
Imported? No
Parameter class Not applicable
Role Standby, Recovery Appliance
Standby type Physical, logical
Corresponds to Not applicable
Scope Database
Cloud Control name Not applicable
8.3.4 ApplyParallel
The ApplyParallel configurable property specifies whether Redo Apply should use
multiple processes to apply redo data to the physical standby database.
If Redo Apply is shut off, then setting the property has no immediate effect. However,
when Redo Apply is running again, the value of the property is used to determine the
parallel apply behavior of Redo Apply.
Category Description
Datatype String
Valid values • AUTO—the number of parallel processes used for Redo Apply is
automatically determined by Oracle based on the number of CPUs
that the system has.
• NO—no parallel apply
• 2, 3, and so on—manually specify the number of parallel processes
used for Redo Apply. (Specifying 0 is the same as specifying NO;
specifying 1 is the same as specifying AUTO.)
Broker default AUTO
Imported? No
Parameter class Not applicable
Role Standby
Standby type Physical
Corresponds to • AUTO corresponds to the PARALLEL clause of the ALTER DATABASE
RECOVER MANAGED STANDBY DATABASE statement
• NO corresponds to the NOPARALLEL clause of the ALTER DATABASE
RECOVER MANAGED STANDBY DATABASE statement
• 2, 3, and so on corresponds to the PARALLEL n clause of the ALTER
DATABASE RECOVER MANAGED STANDBY DATABASE statement
Scope Database
Cloud Control Not applicable
name
8-25
Chapter 8
Configurable Properties
8.3.5 ArchiveLagTarget
The ArchiveLagTarget configurable property limits the amount of data that can be lost.
In effect, limiting the amount of data that can be lost increases the availability of the
standby database by forcing a log switch after the amount of time you specify (in
seconds) elapses. That way, the standby database will not miss redo records
generated from a time range longer than the value set for the ARCHIVE_LAG_TARGET
initialization parameter.
Category Description
Datatype Number
Valid values Seconds (either 0 seconds, or any number from 60 to 7200 seconds)
Broker default Value imported from the ARCHIVE_LAG_TARGET initialization parameter
Imported? Yes, from the ARCHIVE_LAG_TARGET initialization parameter
Parameter class Dynamic
Role Primary database, far sync instance, Recovery Appliance
Standby type Not applicable
Corresponds to ARCHIVE_LAG_TARGET=seconds initialization parameter
Scope Database
Cloud Control name Archive Lag Target
8.3.6 Binding
The Binding configurable property specifies whether the destination is MANDATORY or
OPTIONAL.
Category Description
Datatype String
Valid values • MANDATORY
You can specify a policy for reuse of online redo log files using the
MANDATORY value. If the archiving operation of a mandatory
destination fails, online redo log files cannot be overwritten.
• OPTIONAL
You can specify a policy for reuse of online redo log files using the
OPTIONAL value. If the archiving operation of an optional destination
fails, the online redo log files are overwritten.
Broker default OPTIONAL
Imported? No
Parameter class Dynamic
Role Standby database, Recovery Appliance, far sync instance1
Standby type Physical, logical, or snapshot standby, far sync instance, Recovery
Appliance
8-26
Chapter 8
Configurable Properties
Category Description
Corresponds to • MANDATORY and OPTIONAL attributes for the LOG_ARCHIVE_DEST_n
initialization parameter of the database or far sync instance that is
sending redo data
• BINDING column of the V$ARCHIVE_DEST view of the database or far
sync instance that is sending redo data
Scope Database, far sync instance, Recovery Appliance
Cloud Control name Not applicable
1 Although this property is set for the redo destination, it is indirectly related to the redo transport services
for the database or far sync instance that is sending redo data. The broker propagates the setting you
specify to the corresponding attributes of the LOG_ARCHIVE_DEST_n value of the database or far sync
instance that is sending redo data.
8.3.7 DataGuardSyncLatency
The DataGuardSyncLatency database property supports the database initialization
parameter, DATA_GUARD_SYNC_LATENCY.
The broker periodically runs a health-check routine to check the consistency between
the value of the DataGuardSyncLatency property value and the value of the
DATA_GUARD_SYNC_LATENCY initialization parameter on each member of the configuration.
If an inconsistency is found, the health-check report signals an error.
Category Description
Data type Integer
Valid values >= 0
Broker default Value imported from the DATA_GUARD_SYNC_LATENCY
database initialization parameter.
Imported? Yes, from the DATA_GUARD_SYNC_LATENCY initialization
parameter
Parameter class Dynamic
Role Primary
Standby type Not applicable
Corresponds to DATA_GUARD_SYNC_LATENCY database initialization
parameter
Scope Database
Cloud Control name Not applicable
8-27
Chapter 8
Configurable Properties
8.3.8 DbFileNameConvert
The DbFileNameConvert configurable property distinguishes physical standby datafile
filenames from primary datafile filenames.
If you add a datafile to the primary database, this property converts the datafile name
on the primary database to the datafile on the physical standby database.
This property is used in the following situations:
• At physical standby mount time, it is used to rename primary datafile filenames to
standby datafile filenames if the datafile file path on the physical standby system is
different from the primary database system.
• When a new data file is created on the primary database, a corresponding new
data file will be created on the physical standby database if the
StandbyFileManagement configurable property is set to 'AUTO'. Oracle uses the data-
file file-path mapping information from the DbFileNameConvert property to determine
the standby file path of the new standby data file. If the StandbyFileManagement
property is set to 'MANUAL', you must add a corresponding file to the physical
standby database.
Note:
When a database is added to the configuration, the broker sets the initial value
of this property to the in-memory value of the DB_FILE_NAME_CONVERT initialization
parameter. It is possible that the in-memory value and server parameter file
(SPFILE) value of this parameter will differ. If you want to use the parameter's
in-memory value, then enable the database and the broker will ensure that the
SPFILE value of the parameter is set to the in-memory value. If you want to use
the SPFILE value, then set the property value to be the parameter's value
stored in the SPFILE. Then enable the database.
Category Description
Datatype String
Valid values Set the value of this property to a list of string pairs:
1. The first string is the substring found in the datafile names on the
primary database.
2. The second string is the substring found in the datafile names on the
standby database.
For example, ('string1', 'string2', 'string3', 'string4',...)
Where:
• string1 is the substring of the primary database filename.
• string2 is the substring of the standby database filename.
• string3 is the substring of the primary database filename.
• string4 is the substring of the standby database filename.
Broker default Value of the DB_FILE_NAME_CONVERT initialization parameter
Imported? Yes, from the DB_FILE_NAME_CONVERT initialization parameter
8-28
Chapter 8
Configurable Properties
Category Description
Parameter class Static
Role Standby
Standby type Physical
Corresponds to DB_FILE_NAME_CONVERT initialization parameter
Scope Database
Cloud Control name DB File Name Convert
8.3.9 DelayMins
The DelayMins configurable property specifies the number of minutes log apply
services will delay applying the archived redo log data on the standby database.
When the DelayMins property is set to the default value of 0 minutes, log apply services
apply redo data as soon as possible.
If the DelayMins property is set to 0, start log apply services as follows:
• Start Redo Apply on physical standby databases using the following SQL
statement:
ALTER DATABASE RECOVER MANAGED STANDBY DATABASE;
• Start SQL Apply on logical standby databases using the following SQL statement:
ALTER DATABASE START LOGICAL STANDBY APPLY IMMEDIATE;
Category Description
Datatype Integer
Valid values >=0 (minutes) 1
Broker default 0
Imported? No
Parameter class Dynamic
Role Standby2, Recovery Appliance
Standby type Physical, logical, Recovery Appliance
Corresponds to • DELAY attribute for the LOG_ARCHIVE_DEST_n initialization parameter
of the database or far sync instance that is sending redo data
• DELAY_MINS column of the V$ARCHIVE_DEST view of the database or
far sync instance that is sending redo data
• Options used to start Redo Apply and SQL Apply
Scope Database
Cloud Control name Apply Delay (mins)
1 The DelayMins property must be reset to 0 before attempting a switchover to a standby with DelayMins
greater than 0.
2 Although this property is set for the standby database, it is indirectly related to the redo transport services
for the database or far sync instance that is sending redo data. The broker propagates the setting you
specify on the standby database to the corresponding attributes of the LOG_ARCHIVE_DEST_n value of
the database or far sync instance that is sending redo data.
8-29
Chapter 8
Configurable Properties
8.3.10 DGConnectIdentifier
The DGConnectIdentifier configurable property specifies the connection identifier the
broker uses when making connections to a configuration member.
If you are using DGMGRL, then you supply the value when you enter the CREATE
CONFIGURATION, ADD DATABASE, or ADD FAR_SYNC command. If you are using Cloud Control,
the value is supplied automatically. The connect identifier for a configuration member
must:
• Allow all other members in the configuration to reach it.
• Allow the member to reach itself.
• Allow all instances of an Oracle RAC database to be reached.
• Specify a service that all instances dynamically register with the listeners so that
connect-time failover on an Oracle RAC database is possible.
Caution:
The service should NOT be one that is defined and managed by Oracle
Clusterware.
• Have failover attributes set to allow the primary database's Redo Transport
Services to continue shipping redo data to an Oracle RAC standby database, even
if the receiving instance of that standby database has failed.
The value of this property is specified in the SERVICE attribute of the LOG_ARCHIVE_DEST_n
parameter when the broker configures redo transport services on the primary
database.
Category Description
Datatype String
Valid values A connect identifier that can be used to connect to this database
Broker default Not applicable
Imported? No
Parameter class Not applicable
Role Primary, standby, far sync instance, Recovery Appliance
Standby type Physical, logical, or snapshot standby, far sync instance, Recovery
Appliance
Corresponds to SERVICE_NAME attribute of the LOG_ARCHIVE_DEST_n initialization
parameter of the configuration member that is sending redo data
Scope Database, far sync instance, Recovery Appliance
Cloud Control Not applicable
name
8-30
Chapter 8
Configurable Properties
See Also:
Oracle Database Net Services Administrator's Guide
8.3.11 Encryption
The Encryption configurable property is used to specify whether redo data is encrypted
before transmitting it to a Recovery Appliance.
Note:
Redo transport encryption can only be used with a Recovery Appliance.
Category Description
Datatype String
Valid values DISABLE, ENABLE
• When ENABLE is specified, the redo data is encrypted before it is sent to
a Recovery Appliance.
• When DISABLE is specified, the redo data is not encrypted before it is
sent to a Recovery Appliance.
Broker Default DISABLE
Imported? No
Parameter class Dynamic
Role Recovery Appliance
Standby type Recovery Appliance
Corresponds to • ENCRYPTION attribute for the LOG_ARCHIVE_DEST_n initialization
parameter of the database or far sync instance that is sending redo
data
• ENCRYPTION column of the V$ARCHIVE_DEST view of the database or far
sync instance that is sending redo data to the Recovery Appliance
Scope Recovery Appliance
Cloud Control Not Applicable
name
8.3.12 FastStartFailoverTarget
The FastStartFailoverTarget configuration property specifies the DB_UNIQUE_NAME of one
or more standby databases that can act as target databases in a fast-start failover
situation when the database on which the property is set is the primary database.
These possible target databases are referred to as candidate fast-start failover targets.
See Task 2 in Enabling Fast-Start Failover for more information about setting this
property.
The FastStartFailoverTarget configuration property can only be set to the name of
physical or logical standbys. It cannot be set to the name of a snapshot standby
database, far sync instance, or Zero Data Loss Recovery Appliance.
8-31
Chapter 8
Configurable Properties
Category Description
Datatype String
Valid value DB_UNIQUE_NAME of the database that is the target of the fast-start
failover. You can specify names of multiple standbys or the keyword
ANY. If multiple names are specified, then the broker selects them in the
order in which they are listed. If the property is set to ANY, then the
broker can select any one of all viable standbys of the primary as the
current FSFO target.
Broker default If only one physical or logical standby database exists, then the broker
selects that as the default value for this property on the primary
database when fast-start failover is enabled.
If more than one physical or logical standby database exists, then the
broker selects one based on the order in which they are specified in the
property definition. Targets are verified when fast-start failover is
enabled.
For the target standby database, the broker automatically selects the
current primary database as the value for this property when fast-start
failover is enabled.
Imported? No
Parameter class Not applicable
Role Primary or standby
Standby type Physical or logical
Corresponds to Not applicable
Scope Database
Cloud Control name Cloud Control displays the value for the current primary database on the
Oracle Data Guard Overview page, along with whether or not fast-start
failover has been enabled.
8.3.13 InstanceName
The InstanceName configurable property corresponds to the INSTANCE_NAME initialization
parameter.
The property can only be updated when broker management of the database is
disabled. You should only update the value when the INSTANCE_NAME initialization
parameter is changed. In such a case, you must disable broker management of the
database, update the InstanceName property to match the new INSTANCE_NAME value, and
then reenable broker management of the database.
Note:
If no existing instance in the broker configuration, for the database whose name
matches this instance's db_unique_name, has an InstanceName property with a
value that matches the INSTANCE_NAME initialization parameter for this instance,
then the broker creates a new instance for this database that has this
instance's db_unique_name.
8-32
Chapter 8
Configurable Properties
Category Description
Datatype String
Valid values The value of the INSTANCE_NAME initialization parameter for this instance.
On certain platforms, the value may be case-sensitive.
Broker default Not applicable
Imported? Yes
Parameter class Not applicable
Role Primary and standby
Standby type Physical, logical, or snapshot
Corresponds to INSTANCE_NAME initialization parameter
Scope Instance
Cloud Control name Not applicable
8.3.14 LogArchiveFormat
The LogArchiveFormat configurable instance-specific property specifies the format for
filenames of archived redo log files.
To specify the format, it uses a database ID (%d), thread (%t), sequence number (%s),
and resetlogs ID (%r).
Note:
When a member is added to the configuration, the broker sets the initial value
of this property to the in-memory value of the LOG_ARCHIVE_FORMAT initialization
parameter. It is possible that the in-memory value and server parameter file
(SPFILE) value of this parameter will differ. If you want to use the parameter's
in-memory value, then enable the member and the broker will ensure that the
SPFILE value of the parameter is set to the in-memory value. If you want to use
the SPFILE value, then set the property value to be the parameter's value
stored in the SPFILE. Then enable the member.
Category Description
Datatype String
Valid values %d_%t_%s_%r
Broker default Value of the LOG_ARCHIVE_FORMAT initialization parameter
Imported? Yes, from the LOG_ARCHIVE_FORMAT initialization parameter on the
primary database
Parameter class Static
Role Primary, standby, far sync instance
Standby type Physical, logical, or snapshot standby, or a far sync instance
Corresponds to LOG_ARCHIVE_FORMAT initialization parameter
8-33
Chapter 8
Configurable Properties
Category Description
Scope Instance (On an Oracle RAC database, you can use the EDIT INSTANCE
* ON DATABASE command to have all instances use the same value for
this property.)
Cloud Control name Not applicable
8.3.15 LogArchiveMaxProcesses
The LogArchiveMaxProcesses configurable property specifies the initial number of
archiver processes (ARCn) that are invoked.
The actual number of archiver processes in use may increase subsequently based on
the archiving workload.
Category Description
Datatype Integer
Valid values 1 to 30
Broker default Value of the LOG_ARCHIVE_MAX_PROCESSES initialization parameter
Imported? Yes, from the LOG_ARCHIVE_MAX_PROCESSES initialization parameter
Parameter class Dynamic
Role Primary, standby, far sync instance, Recovery Appliance
Standby type Physical, logical, or snapshot standby, far sync instance, Recovery
Appliance
Corresponds to LOG_ARCHIVE_MAX_PROCESSES initialization parameter
Scope Database, far sync instance
Cloud Control name Archiver Processes
8.3.16 LogArchiveMinSucceedDest
The LogArchiveMinSucceedDest configurable property controls when online redo log files
are available for reuse.
For the online redo log files to be available for reuse, archiving must succeed to a
minimum number of destinations.
Category Description
Datatype Integer
Valid values 1 to 10
Broker default Value of the LOG_ARCHIVE_MIN_SUCCEED_DEST initialization parameter
Imported? Yes, from the LOG_ARCHIVE_MIN_SUCCEED_DEST initialization parameter
Parameter class Dynamic
Role Primary database, far sync instance, Recovery Appliance
Standby type Not applicable
Corresponds to LOG_ARCHIVE_MIN_SUCCEED_DEST initialization parameter
8-34
Chapter 8
Configurable Properties
Category Description
Scope Database, far sync instance
Cloud Control Not applicable
name
8.3.17 LogArchiveTrace
Set the LogArchiveTrace configurable instance-specific property to an integer value to
see the progression of the archiving of online redo log files on the primary and the
standby databases.
The Oracle database writes an audit trail of the archived redo log files received from
the primary database into process trace files.
Category Description
Datatype Integer
Valid values A valid value is the sum of any combination of any of the following
values:
0: Disable archive redo log tracing
1: Track archiving of online redo log file
2: Track archiving status of each archive redo log destination
4: Track archiving operational phase
8: Track ARCHIVELOG destination activity
16: Track detailed ARCHIVELOG destination activity
32: Track ARCHIVELOG destination parameter modifications
64: Track ARCn process state activity
128: Track FAL (fetch archive log) server related activities
256: Tracks RFS Logical Client
512: Tracks LGWR redo shipping network activity
1024: Tracks RFS physical client
2048: Tracks RFS/ARCn ping heartbeat
4096: Tracks real-time apply activity
8192: Tracks Redo Apply (media recovery or physical standby)
16384: Tracks archive I/O buffers
32768: Tracks LogMiner dictionary archiving
Broker default Value of the LOG_ARCHIVE_TRACE initialization parameter
Imported? Yes, from the LOG_ARCHIVE_TRACE initialization parameter
Parameter class Dynamic
Role Primary, standby, far sync instance
Standby type Physical, logical, or snapshot standby, or a far sync instance
Corresponds to LOG_ARCHIVE_TRACE initialization parameter
Scope Instance (On an Oracle RAC database, you can use the EDIT INSTANCE
* ON DATABASE command to have all instances use the same value for
this property.)
Cloud Control name Log Archive Trace
8-35
Chapter 8
Configurable Properties
8.3.18 LogFileNameConvert
The LogFileNameConvert configurable property converts the filename of an online redo
log file on the primary database to the filename of a corresponding online redo log file
on the physical standby database.
Note:
When a database is added to the configuration, the broker sets the initial value
of this property to the in-memory value of the LOG_FILE_NAME_CONVERT
initialization parameter. It is possible that the in-memory value and server
parameter file (SPFILE) value of this parameter will differ. If you want to use the
parameter's in-memory value, then enable the database and the broker will
ensure that the SPFILE value of the parameter is set to the in-memory value. If
you want to use the SPFILE value, then set the property value to be the
parameter's value stored in the SPFILE. Then enable the database.
Category Description
Datatype String
Valid values Set the value of this property to a list of an even number of string pairs,
separated by commas.
1. The first string is the substring found in the datafile names on the
primary database.
2. The second string is the substring found in the datafile names on the
standby database.
For example, ('string1', 'string2', 'string3', 'string4',...)
Where:
• string1 is the substring of the primary database filename.
• string2 is the substring of the standby database filename.
• string3 is the substring of the primary database filename.
• string4 is the substring of the standby database filename.
Broker default Value of the LOG_FILE_NAME_CONVERT initialization parameter
Imported? Yes, from the LOG_FILE_NAME_CONVERT initialization parameter
Parameter class Static
Role Standby
Standby type Physical database and far sync instance
Corresponds to LOG_FILE_NAME_CONVERT initialization parameter
Scope Database
Cloud Control name Log File Name Convert
8-36
Chapter 8
Configurable Properties
8.3.19 LogShipping
The broker uses the value of the LogShipping property when the primary database is in
the TRANSPORT-ON state or when the physical standby or far sync instance forwards redo
data to another member.
The other member can be a physical, logical, or snapshot standby, or a far sync
instance.
• If the primary database is in the TRANSPORT-ON state and the value of the
LogShipping property is ON, then redo transport services are enabled to send redo
data to the particular configuration member. If the LogShipping property is OFF, then
redo transport services are disabled to that member.
• If a configuration member that forwards redo data has its LogShipping property set
to ON and the member to which it sends redo data also has its LogShipping property
set to ON, then redo transport services are enabled from the member sending redo
data to the member that is to receive redo data.
If a member that forwards redo data has its LogShipping property set to ON but the
member to which it sends redo data has its LogShipping property set to OFF, then
redo transport services are disabled from the member sending redo data to the
member that is to receive redo data.
Category Description
Datatype String
Valid values ON or OFF
Broker default ON
Imported? No
Parameter class Dynamic
Role Standby database, Recovery Appliance, far sync instance1
Standby type Physical, logical, or snapshot standby, far sync instance, Recovery
Appliance
Corresponds to ENABLE and DEFER values for the LOG_ARCHIVE_DEST_STATE_n initialization
parameter of the database or far sync instance that is sending redo data
Scope Database, Recovery Appliance
Cloud Control name Log Shipping
1 Although this property is set for a standby database or far sync instance, it is indirectly related to the redo
transport services for the database or far sync instance that is sending redo data. The broker propagates
the setting you specify on the standby database to the corresponding attributes of the
LOG_ARCHIVE_DEST_n value of the database or far sync instance that is sending redo data.
8.3.20 LogXptMode
The LogXptMode configurable property enables you to set the redo transport service.
You set the redo transport services on each configuration member to one of the
following modes:
• SYNC
8-37
Chapter 8
Configurable Properties
Configures redo transport services for this configuration member using the SYNC
and AFFIRM attributes of the LOG_ARCHIVE_DEST_n initialization parameter. Standby
redo log files are required. This mode is required for the maximum protection or
maximum availability data protection modes. This redo transport service enables
the highest grade of data protection to the primary database, but also incurs the
highest performance impact.
• ASYNC
Configures redo transport services for this configuration member using the ASYNC
and NOAFFIRM attributes of the LOG_ARCHIVE_DEST_n initialization parameter. Standby
redo log files are required. This mode enables a moderate grade of data protection
to the primary database, and incurs a lower performance impact than SYNC.
• FASTSYNC
Configures redo transport services for this configuration member using the SYNC
and NOAFFIRM attributes of the LOG_ARCHIVE_DEST_n initialization parameter. This
mode is only available in maximum availability protection mode. Because FASTSYNC
transport mode uses the NOAFFIRM attribute of the LOG_ARCHIVE_DEST_n parameter,
data loss is possible.
Category Description
Datatype String
Valid values SYNC, ASYNC, or FASTSYNC
Broker default ASYNC
Imported? No
Parameter class Dynamic
Role Standby database, Recovery Appliance, far sync instance1
Standby type Physical, logical, or snapshot standby, far sync instance, Recovery
Appliance
Corresponds to • SYNC, ASYNC, AFFIRM, and NOAFFIRM attributes for the
LOG_ARCHIVE_DEST_n initialization parameter of the database or far
sync instance that is sending redo data
• ARCHIVER, TRANSMIT_MODE, and AFFIRM columns of V$ARCHIVE_DEST
view of the database or far sync instance that is sendng redo data
Scope Database, far sync instance, Recovery Appliance
Cloud Control name Redo Transport Service
1 Although this property is set for the standby database or far sync instance, it is indirectly related to the
redo transport services for the database or far sync instance that is sending redo. The broker propagates
the setting you specify on the standby database or far sync instance to the corresponding attributes of the
LOG_ARCHIVE_DEST_n value of the database or far sync instance that is sending redo data. Note that if a
database receives redo from a database or far sync instance where the RedoRoutes property has been
configured with a redo transport mode, then the mode specified by that RedoRoutes property value
overrides the value of the LogXptMode property.
See Also:
Managing the Members of a Broker Configuration for more information about
setting data protection modes for redo transport services
8-38
Chapter 8
Configurable Properties
8.3.21 LsbyMaxEventsRecorded
The LsbyMaxEventsRecorded configurable property specifies the number of events that
will be stored in the DBA_LOGSTDBY_EVENTS table, which stores logical standby event
information.
Category Description
Datatype Integer
Valid values >=0
Broker default Value of the MAX_EVENTS_RECORDED row of SYSTEM.LOGSTDBY$PARAMETERS
Imported? Yes, from the MAX_EVENTS_RECORDED row of
SYSTEM.LOGSTDBY$PARAMETERS
Parameter class Dynamic; SQL Apply does not require restart
Role Standby
Standby type Logical
Corresponds to DBMS_LOGSTDBY.APPLY_SET('MAX_EVENTS_RECORDED') and the
DBMS_LOGSTDBY.APPLY_UNSET('MAX_EVENTS_RECORDED') procedures
Scope Database
Cloud Control name Max Events Recorded
8.3.22 LsbyMaxServers
The LsbyMaxServers configurable instance-specific property specifies the number of
parallel query servers specifically reserved for SQL Apply.
If the value is 0, then SQL Apply uses all available parallel query servers to read the
log files and apply changes.
Category Description
Datatype Integer
Valid values >=0
Broker default Value of the MAX_SERVERS row of SYSTEM.LOGSTDBY$PARAMETERS
Imported? Yes, from the MAX_SERVERS row of SYSTEM.LOGSTDBY$PARAMETERS
Parameter class Dynamic; SQL Apply does not require restart
Role Standby
Standby type Logical
Corresponds to DBMS_LOGSTDBY.APPLY_SET('MAX_SERVERS') and the
DBMS_LOGSTDBY.APPLY_UNSET('MAX_SERVERS') procedures
Scope Instance (On an Oracle RAC database, you can use the EDIT INSTANCE
* ON DATABASE command to have all instances use the same value for
this property.)
Cloud Control name Max Servers
8-39
Chapter 8
Configurable Properties
8.3.23 LsbyMaxSga
The LsbyMaxSga configurable instance-specific property specifies the number of
megabytes for the allocation of SQL Apply cache in the system global area (SGA).
If the value is 0, SQL Apply uses one quarter of the value set for the SHARED_POOL_SIZE
initialization parameter.
Category Description
Datatype Integer
Valid values >=0
Broker default Value of the MAX_SGA row of SYSTEM.LOGSTDBY$PARAMETERS
Imported? Yes, from the MAX_SGA row of SYSTEM.LOGSTDBY$PARAMETERS
Parameter class Dynamic; SQL Apply does not require restart
Role Standby
Standby type Logical
Corresponds to DBMS_LOGSTDBY.APPLY_SET('MAX_SGA') and the
DBMS_LOGSTDBY.APPLY_UNSET('MAX_SGA') procedures
Scope Instance (On an Oracle RAC database, you can use the EDIT INSTANCE
* ON DATABASE command to have all instances use the same value for
this property.)
Cloud Control name Max SGA (MB)
8.3.24 LsbyPreserveCommitOrder
The LsbyPreserveCommitOrder configurable property controls whether transactions are
committed on the logical standby database in the exact same order in which they were
committed on the primary database.
Specify one of the following values:
• TRUE: Transactions are applied to the logical standby database in the exact order in
which they were committed on the primary database.
• FALSE: Transactions containing non-overlapping sets of rows may be committed in
a different order than they were committed on the primary database.
Category Description
Datatype String
Valid values TRUE or FALSE
Broker default Value of the PRESERVE_COMMIT_ORDER row of
SYSTEM.LOGSTDBY$PARAMETERS
Imported? Yes, from the PRESERVE_COMMIT_ORDER row of
SYSTEM.LOGSTDBY$PARAMETERS
Parameter class Static; SQL Apply requires restart
Role Standby
Standby type Logical
8-40
Chapter 8
Configurable Properties
Category Description
Corresponds to DBMS_LOGSTDBY.APPLY_SET('PRESERVE_COMMIT_ORDER') and
DBMS_LOGSTDBY.APPLY_UNSET('PRESERVE_COMMIT_ORDER') procedures
Scope Database
Cloud Control name Preserve Commit Order
8.3.25 LsbyRecordAppliedDdl
The LsbyRecordAppliedDdl configurable property controls whether or not SQL
statements that were applied to the logical standby database are recorded in the
DBA_LOGSTDBY_EVENTS table.
Category Description
Datatype String
Valid values TRUE or FALSE
Broker default Value of the RECORD_APPLIED_DDL row of SYSTEM.LOGSTDBY$PARAMETERS
Imported? Yes, from the RECORD_APPLIED_DDL row of SYSTEM.LOGSTDBY$PARAMETERS
Parameter class Dynamic; SQL Apply does not require restart
Role Standby
Standby type Logical
Corresponds to DBMS_LOGSTDBY.APPLY_SET('RECORD_APPLIED_DDL') and the
DBMS_LOGSTDBY.APPLY_UNSET('RECORD_APPLIED_DDL') procedures
Scope Database
Cloud Control name Record Applied DDL
8.3.26 LsbyRecordSkipDdl
The LsbyRecordSkipDdl configurable property controls whether or not skipped DDL
statements are recorded in the DBA_LOGSTDBY_EVENTS table.
Category Description
Datatype String
Valid values TRUE or FALSE
8-41
Chapter 8
Configurable Properties
Category Description
Broker default Value of the RECORD_SKIP_DDL row of SYSTEM.LOGSTDBY$PARAMETERS
Imported? Yes, from the RECORD_SKIP_DDL row of SYSTEM.LOGSTDBY$PARAMETERS
Parameter class Dynamic; SQL Apply does not require restart
Role Standby
Standby type Logical
Corresponds to DBMS_LOGSTDBY.APPLY_SET('RECORD_SKIP_DDL') and the
DBMS_LOGSTDBY.APPLY_UNSET('RECORD_SKIP_DDL') procedures
Scope Database
Cloud Control name Record Skip DDL
8.3.27 LsbyRecordSkipErrors
The LsbyRecordSkipErrors configurable property controls whether or not skipped errors
(as described by the DBMS_LOGSTDBY.SKIP_ERROR procedure) are recorded in the
DBA_LOGSTDBY_EVENTS table.
Category Description
Datatype String
Valid values TRUE or FALSE
Broker default Value of the RECORD_SKIP_ERRORS row of SYSTEM.LOGSTDBY$PARAMETERS
Imported? Yes, from the RECORD_SKIP_ERRORS row of SYSTEM.LOGSTDBY$PARAMETERS
Parameter class Dynamic; SQL Apply does not require restart
Role Standby
Standby type Logical
Corresponds to DBMS_LOGSTDBY.APPLY_SET('RECORD_SKIP_ERRORS') and the
DBMS_LOGSTDBY.APPLY_UNSET('RECORD_SKIP_ERRORS') procedures
Scope Database
Cloud Control name Record Skip Errors
8.3.28 MaxConnections
The MaxConnections configurable property specifies how many ARCn processes will be
used in parallel to transmit redo data from a single archived redo log on the database
or far sync instance to the archived redo log at the remote site.
If the MaxConnections property is set to a value greater than 1, then redo transport
services use multiple ARCn processes to transmit redo data to archived redo log files
at the remote destinations.
8-42
Chapter 8
Configurable Properties
Category Description
Datatype Integer
Valid values 1 to 20
Broker default 1
Imported? No
Parameter class Dynamic
Role Standby, Recovery Appliance
Standby type Physical, logical, snapshot, Recovery Appliance
Corresponds to • LOG_ARCHIVE_MAX_PROCESSES initialization parameter1
• MAX_CONNECTIONS attribute for the LOG_ARCHIVE_DEST_n initialization
parameter of the database or far sync instance that is sending redo
data
• MAX_CONNECTIONS column of the V$ARCHIVE_DEST view of the
database or far sync instance that is sending redo data
Note:
The MAX_CONNECTIONS attribute for the
LOG_ARCHIVE_DEST_n initialization parameter
is deprecated as of Oracle Database 18c
and is supported for backward compatibility
only.
8.3.29 MaxFailure
The MaxFailure configurable property specifies the maximum number of contiguous
archiving failures before the redo transport services stop trying to transport archived
redo log files to the standby database.
A value of zero indicates that an unlimited number of failures are allowed.
Category Description
Datatype Integer
Valid values >=0
Broker default If the standby database is part of a group as specified with the broker
RedoRoutes property, then the default value 1. Otherwise, the default
value is 0.
Imported? No
Parameter class Dynamic
Role Standby1, Recovery Appliance
8-43
Chapter 8
Configurable Properties
Category Description
Standby type Physical, logical, snapshot, Recovery Appliance
Corresponds to • MAX_FAILURE attribute for the LOG_ARCHIVE_DEST_n initialization
parameter of the database or far sync instance that is sending redo
data
• MAX_FAILURE column of the V$ARCHIVE_DEST view of the database or
far sync instance that is sending redo data
Scope Database, Recovery Appliance
Cloud Control name Not applicable
1 Although this property is set for a standby database or far sync instance, it is indirectly related to the redo
transport services for the database or far sync instance that is sending redo data. The broker propagates
the setting you specify on the standby database or far sync instance to the corresponding attributes of the
LOG_ARCHIVE_DEST_n value of the database or far sync instance that is sending redo data.
8.3.30 NetTimeout
The NetTimeout configurable property specifies the number of seconds the LGWR
waits for Oracle Net Services to respond to a LGWR request.
It is used to bypass the long connection timeout in TCP.
Category Description
Datatype Integer
Valid values 0, 15 to 1200
Broker default 30
Imported? No
Parameter class Dynamic
Role Primary, standby, far sync instance, Recovery Appliance
Standby type Physical, logical, or snapshot standby, far sync instance, Recovery
Appliance
Corresponds to • NET_TIMEOUT attribute of the LOG_ARCHIVE_DEST_n initialization
parameter of the database or far sync instance that is sending redo
data
• NET_TIMEOUT column of V$ARCHIVE_DEST view of the database or far
sync instance that is sending redo data
Scope Database, far sync instance, Recovery Appliance
Cloud Control name Not applicable
8.3.31 ObserverConnectIdentifier
The ObserverConnectIdentifier configurable property specifies a connect identifier that
can be used by the observer to connect to this database.
The connect identifier can pertain only to the primary database, or to the target
standby database when fast-start failover is enabled.
8-44
Chapter 8
Configurable Properties
Category Description
Datatype String
Valid Values A connect identifier that observer can use to connect to this database
Broker Default Empty String1
Imported? No
Parameter Class Not applicable
Role Primary and Standby
Standby Type Physical or logical
Corresponds to Not applicable
Scope Database
Cloud Control name Observer Connect Identifier
1 When this is Empty String (not set by the user), the connect identifier specified by this database's
DGConnectIdentifier property will be used by the observer.
8.3.32 OnlineAlternateLocation
The OnlineAlternateLocation configurable property specifies an alternate online redo
log archive location for primary, logical, and snapshot standby databases when the
location specified by the OnlineArchiveLocation configurable property fails.
This property has instance-specific scope, and the location it specifies must be
accessible by the instance.
Category Description
Datatype String
Valid • An empty string when no alternate location is desired.
values • A directory specification that is accessible by the instance.
• A valid LOG_ARCHIVE_DEST_n parameter string with the LOCATION attribute
specified, but no VALID_FOR, ALTERNATE, or SERVICE attributes.
Broker Empty string
default
Imported? No
Parameter Dynamic
class
Role Primary and standby
Standby Physical, logical, or snapshot standby
type
Correspon On the primary or standby database, the LOCATION attribute for
ds to the LOG_ARCHIVE_DEST_n initialization parameter that represents an alternate
destination of the local destination that matches the configurable property
OnlineArchiveLocation.
Scope Instance
Cloud There is no Cloud Control name
Control
name
8-45
Chapter 8
Configurable Properties
8.3.33 OnlineArchiveLocation
The OnlineArchiveLocation configurable property specifies the online redo log archive
location for primary, logical, and snapshot standby databases.
Oracle recommends that you always explicitly set a value for this property.
Category Description
Datatype String
Valid • An empty string when you do not want broker to manage the online archive
values location.
• A nonempty file specification of the redo log archive location for the instance.
Specify USE_DB_RECOVERY_FILE_DEST if a database recovery area is desired.
• A valid LOG_ARCHIVE_DEST_n parameter string with the LOCATION attribute
specified, but no VALID_FOR, ALTERNATE, or SERVICE attributes.
Broker Empty string
default
Imported? Yes, from the DESTINATION column of the V$ARCHIVE_DEST view of the instance
where the destination is a local destination and where the VALID_FOR attribute is
compatible with the string (ONLINE_LOGFILE, ALL_ROLES).
Parameter Dynamic
class
Role Primary and standby
Standby Physical, logical, or snapshot standby
type
Correspon • LOCATION attribute of the LOG_ARCHIVE_DEST_n initialization parameter of the
ds to primary or standby database with VALID_FOR compatible with
(ONLINE_LOGFILE, ALL_ROLES)
• DESTINATION column of the V$ARCHIVE_DEST view of the primary or standby
database
Scope Instance
Cloud There is no Cloud Control name
Control
name
8.3.34 PreferredApplyInstance
The PreferredApplyInstance configurable property indicates that a particular instance is
the preferred choice for serving log apply services.
It is only used when the database is a standby Oracle RAC database. The value could
be an empty string (default) which means the broker chooses the apply instance.
Category Description
Datatype String
Valid Values The instance name (SID) or empty string. Note that on certain platforms,
SIDs may be case-sensitive.
Broker Default Empty string
Imported? No
8-46
Chapter 8
Configurable Properties
Category Description
Parameter Class Not applicable
Role Standby, Recovery Appliance
Standby Type Physical, logical, Recovery Appliance
Corresponds to Not applicable
Scope Database, Recovery Appliance
Cloud Control name Apply Instance
See Also:
8.3.35 PreferredObserverHosts
The PreferredObserverHosts configurable property allows you to list the hosts that you
would prefer as hosts for the master observer when that database is in the primary
role.
The value of this property can be changed at any time, regardless of whether Fast-
Start Failover is enabled or not, or whether the observer is in an OBSERVED state.
However, the change does not affect the location of the master observer until the next
role change.
If this property is set, then after a role change the broker takes the following steps:
1. Checks whether the current master observer is running on a host in the list
specified by the PreferredObserverHosts property of the new primary. If yes, stop
here; otherwise, go to step 2.
2. Scans the list from the beginning to look for a host where one observer is running,
and connects to the primary and target standby databases. If found, go to step 3;
otherwise, stop here.
3. Attempts to switch the master observer to the host found in step 2. If switching
fails, no other hosts are tried.
Category Description
Data type String
Valid value A character string that contains one or more host names,
separated by comma:
host_name_1 [,host_name_n]
8-47
Chapter 8
Configurable Properties
Category Description
Broker default Null
Imported? No
Parameter class Not applicable
Role Primary, standby
Standby type Physical standby and logical standby
Corresponds to Not applicable
Scope Database
Cloud Control name Not applicable
8.3.36 RedoCompression
The RedoCompression configurable property is used to specify whether redo data is
transmitted to a standby database or far sync instance in compressed or
uncompressed form.
Note:
Redo transport compression is a feature of the Oracle Advanced Compression
option. You must purchase a license for this option before using the redo
transport compression feature.
Category Description
Datatype String
Valid value DISABLE ,ENABLE, ZLIB, or LZO
• When ENABLE is specified, the default compression algorithm is
ZLIB.
• LZO is not supported when LogXptMode is set to SYNC or FASTSYNC.
Broker Default DISABLE
Imported? No
Parameter class Dynamic
Role Standby database, far sync instance1, Recovery Appliance
Standby type Physical, logical, or snapshot standby, far sync instance, Recovery
Appliance
Corresponds to • COMPRESSION attribute for the LOG_ARCHIVE_DEST_n initialization
parameter of the database or far sync instance that is sending redo
data
• COMPRESSION column of the V$ARCHIVE_DEST view of the database
or far sync instance that is sending redo data
Scope Database, far sync instance, Recovery Appliance
Cloud Control name Not applicable
1 Although this property is set for a standby database or far sync instance, it is indirectly related to the redo
transport services for the database or far sync instance that is sending redo data. The broker propagates
8-48
Chapter 8
Configurable Properties
the setting you specify on the standby database or far sync instance to the corresponding attributes of the
LOG_ARCHIVE_DEST_n value of the database or far sync instance that is sending redo data.
8.3.37 RedoRoutes
The RedoRoutes property lets you override the default behavior by which a primary
database sends the redo that it generates to every other redo transport destination in
the configuration.
You can use the RedoRoutes property to create a more complex redo transport
topology, such as one in which a physical standby database or a far sync instance
forwards redo received from the primary database to one or more destinations, or one
in which the redo transport mode used for a given destination is dependent on which
database is in the primary role.
The RedoRoutes property is set to a character string that contains one or more redo
routing rules. Each rule contains one or more redo sources and one or more redo
destinations. A redo routing rule becomes active when one of the redo sources in the
rule is in the primary role. This results in redo from the primary database being sent to
every redo destination in that rule.
Category Description
Datatype String
Valid values A character string that contains one or more redo routing rules, each
contained within a pair of parentheses:
(redo_routing_rule_1) [(redo_routing_rule_n)]
See "Redo Routing Rules" for more information about redo routing rules.
Broker default Null
Imported? No
Parameter class Not applicable
Role Primary, standby, far sync instance
Standby type Physical standby and far sync instance
Corresponds to LOG_ARCHIVE_DEST_n
Scope Database, far sync instance
Cloud Control Name RedoRoutes
A redo routing rule contains a redo source field and a redo destination field separated
by a colon:
(redo source : redo destination)
8-49
Chapter 8
Configurable Properties
The redo source field must contain the keyword LOCAL or ANY, or a comma-separated
list of DB_UNIQUE_NAME values, as follows:
{LOCAL | ANY | db_unique_name_1,[,db_unique_name_n]}
• The LOCAL keyword is an alias for the local database name. This keyword cannot
be used at a far sync instance.
• The ANY keyword is an alias for any database in the configuration.
• A database cannot be specified as a redo source in more than one redo routing
rule defined at a given database, either explicitly or implicitly through use of the
LOCAL keyword.
The redo destination field must contain the keyword ALL or a comma-separated list of
redo destination groups, each of which consists of destination databases with optional
priority attributes and optional redo transport mode attributes:
{ALL [xpt_mode] | redo_dest_group_1 [, redo_dest_group_n]}
• The ALL keyword is an alias for all possible destinations in the configuration.
• The redo_dest_group_n is:
{ db_unique_name_1 [xpt_mode] | ( db_unique_name_1 [xpt_mode] [PRIORITY=n]
[,db_unique_name_n [xpt_mode] [PRIORITY=n]] ) }
The optional xpt_mode specifies the redo transport mode to be used to send redo to
the associated destination. It can have one of three values: ASYNC, SYNC, or
FASTSYNC. If the redo transport attribute is not specified, then the transport mode
used will be the one specified by the LogXptMode property for the redo destination.
The optional [PRIORITY=n] can have n =1 ~ 8. The default value for far sync
members is 1 and the default value for non-far sync members is 8. It is important
to understand how different group and priority settings affect redo transport under
various conditions. The following examples describe some sample situations.
Example 1: Different Priorities Within a Group
Assume there are three members in a broker configuration:
PRI (primary database)
SB1 (standby database)
FS1 (far sync instance)
The primary database PRI generates the redo log for use by the standby database SB1.
Because there is a far sync instance, FS1, there are two possible redo delivery paths to
the standby database:
(path 1) PRI —> FS1 —> SB1
(path 2) PRI —> SB1
Assume (path 1) is more desirable than (path 2). This can be expressed with the
RedoRoutes property as follows:
As specified in the PRI RedoRoutes property, the primary (PRI) has two destinations : one
for FS1 with PRIORITY=1 and one for SB1 with PRIORITY=2. Smaller priority numbers mean
higher priority, so primary PRI tries to ship the redo log to FS1 first.
8-50
Chapter 8
Configurable Properties
If FS1 is available, then the primary ships to FS1 which has PRIORITY=1. If FS1 is
unavailable, then the primary ships to SB1 which has PRIORITY=2. When FS1 becomes
active again, the primary will ship to it again because priority 1 is higher than priority 2.
Example 2: The Same Priorities Within a Group
Suppose you add one more far sync instance, FS2, to the configuration set up in
Example 1, and then update the RedoRoutes property as follows:
PRI — RedoRoutes = (local : ( FS1 PRIORITY=1, FS2 PRIORITY=1 ) )
FS1 — RedoRoutes = ( PRI : SB1 )
FS2 — RedoRoutes = ( PRI : SB1 )
The primary PRI now has two destinations, FS1 and FS2, with the same priority. The
primary must choose either FS1 or FS2. Assume the primary chooses FS1.
If FS1 is available, then the primary ships to FS1. If FS1 is unavailable, then the primary
ships to FS2. Even after FS1 becomes active again, the primary continues shipping to
FS2 because FS1 and FS2 have the same priority. If FS2 fails, then the primary ships to
FS1.
The general rule is that there is one active redo path for each group. (See Example 4
for a scenario in which there are multiple active redo paths.) The primary establishes
one redo delivery path for the first group ( FS1 PRIORITY=1, SB1 PRIORITY=2 ), and
establishes another redo delivery path for the second group ( FS2 PRIORITY=1, SB2
PRIORITY=2 ).
• If both FS1 and FS2 are available, then the primary ships to FS1 and FS2.
• If FS1 is unavailable and FS2 is available, then the primary ships to SB1 and FS2.
• If FS1 is available and FS2 is unavailable, then the primary ships to FS1 and SB2.
• If both FS1 and FS2 are unavailable, then the primary ships to SB1 and SB2.
Example 4: The PRIORITY Attribute is Set to 8
Setting PRIORITY=8 has special meaning. If a primary ships redo to a destination with
PRIORITY=8, then it must ship to every PRIORITY=8 destination. Suppose you update the
RedoRoutes property as follows so that the primary has one group containing three
destinations:
PRI — RedoRoutes = (local : ( FS1 PRIORITY=1, SB1 PRIORITY=8, SB2
PRIORITY=8 ) )
FS1 — RedoRoutes = ( PRI : SB1, SB2 )
8-51
Chapter 8
Configurable Properties
• A redo routing rule is active if its redo source field specifies the current primary
database. If a rule is active, primary database redo is sent by the database at
which the rule is defined to each destination specified in the redo destination field
of that rule.
• The ASYNC redo transport attribute must be explicitly specified for a cascaded
destination to enable real-time cascading to that destination.
• The RedoRoutes property cannot be configured such that when a physical standby
database is converted to a snapshot standby, the snapshot standby would send
redo data to another member.
• The RedoRoutes property can be set for a logical standby database only if the redo
source field is set to LOCAL.
8.3.38 ReopenSecs
The ReopenSecs configurable property specifies the minimum number of seconds before
the archiver process (ARCn, foreground, or log writer process) should try again to
access a previously failed destination.
Category Description
Datatype Integer
Valid values >=0 seconds
Broker default 300
Imported? No
Parameter class Dynamic
Role Standby database, far sync instance1, Recovery Appliance
Standby type Physical, logical, snapshot standby, far sync instance, Recovery
Appliance
Corresponds to • REOPEN attribute for the LOG_ARCHIVE_DEST_n initialization parameter
of the database or far sync instance that is sending redo data
• REOPEN_SECS column of the V$ARCHIVE_DEST view of the database or
far sync instance that is sending redo data
Scope Database, far sync instance, Recovery Appliance
Cloud Control name Not applicable
1 Although this property is set for a standby database or far sync instance, it is indirectly related to the redo
transport services for the database or far sync instance that is sending redo data. The broker propagates
the setting you specify on the standby database or far sync instance to the corresponding attributes of the
LOG_ARCHIVE_DEST_n value of the database or far sync instance that is sending redo data.
8-52
Chapter 8
Configurable Properties
8.3.39 StandbyAlternateLocation
The StandbyAlternateLocation configurable property specifies an alternate standby
redo log archive location to use when the location specified by the
StandbyArchiveLocation configurable property fails.
The property has instance-specific scope, and the location it specifies has to be
accessible by the instance.
Category Description
Datatype String
Valid values • An empty string, when no alternate location is desired.
• A directory specification that is accessible by the instance.
• A valid LOG_ARCHIVE_DEST_n parameter string with the
LOCATION attribute specified, but no VALID_FOR,
ALTERNATE, or SERVICE attributes.
Broker default Empty string
Imported? No
Parameter class Dynamic
Role Primary, standby, and far sync instance
Standby type Physical, logical, or snapshot standby, or a far sync instance
Corresponds to On the standby database or the far sync instance, the LOCATION
attribute for the LOG_ARCHIVE_DEST_n initialization parameter
that represents an alternate destination of the local destination
that matches the configurable property
StandbyArchiveLocation.
Scope Instance
Cloud Control name Alternate Standby Location
Note:
On a logical standby database, Oracle recommends the LOCATION attribute of
the LOG_ARCHIVE_DEST_n initialization parameter for the local destination be
different from the value of StandbyAlternateLocation configurable property.
8.3.40 StandbyArchiveLocation
The StandbyArchiveLocation configurable property specifies the standby redo log
archive location. Oracle recommends that you always explicitly set the value.
Category Description
Datatype String
8-53
Chapter 8
Configurable Properties
Category Description
Valid values • An empty string when you do not want broker to manage the
standby redo log archive location.
• A nonempty file specification of the standby redo log archive location
for the instance. Specify USE_DB_RECOVERY_FILE_DEST if a database
recovery area is desired.
• A valid LOG_ARCHIVE_DEST_n parameter string with the LOCATION
attribute specified, but no VALID_FOR, ALTERNATE, or SERVICE
attributes.
Broker default Empty string
Imported? Yes, from the DESTINATION column of the V$ARCHIVE_DEST view of
primary database, standby database, or far sync instance where the
destination is a local destination and where the VALID_FOR attribute is
compatible with the string (STANDBY_LOGFILE, ALL_ROLES).
Parameter class Dynamic
Role Primary, standby, and far sync instance
Standby type Physical, logical, or snapshot standby, or a far sync instance
Corresponds to • LOCATION attribute of the LOG_ARCHIVE_DEST_n initialization
parameter of the standby database or far sync instance with
VALID_FOR compatible with (STANDBY_LOGFILE, ALL_ROLES)
• DESTINATION column of the V$ARCHIVE_DEST view of the standby
database
Scope Instance
Cloud Control name Standby Archive Location
Note:
On a logical standby database, Oracle recommends the LOCATION attribute of
the LOG_ARCHIVE_DEST_n initialization parameter for the local destination be
different from the value of StandbyArchiveLocation property, unless you are
using a database recovery area.
8.3.41 StandbyFileManagement
The StandbyFileManagement configurable property affects how the add datafile operation
on the primary database is applied on the standby database.
If this property is set to AUTO, in conjunction with valid settings in the DbFileNameConvert
configurable property, a corresponding new datafile is automatically created on the
standby database. The location of this new standby datafile is determined by the value
of the DbFileNameConvert property.
If this property is set to MANUAL, you have to create the correct new datafile on the
standby database manually.
Category Description
Datatype String
8-54
Chapter 8
Configurable Properties
Category Description
Valid values AUTO or MANUAL
Broker default AUTO
Imported? Yes, from the STANDBY_FILE_MANAGEMENT initialization parameter
Parameter class Dynamic
Role Standby
Standby type Physical or snapshot
Corresponds to STANDBY_FILE_MANAGEMENT initialization parameter
Scope Database
Cloud Control name Not applicable
8.3.42 StaticConnectIdentifier
The StaticConnectIdentifier configurable instance-specific property specifies the
connection identifier that the DGMGRL client will use when starting database
instances.
If this property has a null value, then the DGConnectIdentifier value is used for
operations that involve shutting down and starting up the instance.
Category Description
Datatype String
Valid values A connect identifier that refers to a service that is statically registered.
Broker default Connect descriptor that is the concatenation of:1
• The ADDRESS attribute value of the listener that is specified for the
LOCAL_LISTENER initialization parameter
• The value for the SERVICE_NAME attribute will be set to a
concatenation of db_unique_name_DGMGRL.db_domain
Imported? Yes, from the LOCAL_LISTENER and DB_UNIQUE_NAME initialization
parameters.
Parameter class Not applicable
Role Primary and standby
Standby type Physical, logical, or snapshot
Corresponds to Not applicable
Scope Instance
Cloud Control name Not applicable
1 If the instance specified by the InstanceName property is started with a different SID (read from the
INSTANCE_NAME column of the V$INSTANCE view) than the SID with which it was previously started
and/or it is started on a different host (read from the HOST_NAME column of the V$INSTANCE view) than
the host on which it was previously started, then the broker automatically updates the default value of the
StaticConnectIdentifier property to incorporate the current ADDRESS attribute of the listener that is
specified for the LOCAL_LISTENER initialization parameter.
8-55
Chapter 8
Configurable Properties
See Also:
8.3.43 TransportDisconnectedThreshold
The TransportDisconnectedThreshold configurable property can be used to generate a
warning status for a logical, physical, or snapshot standby, or a far sync instance when
the last communication from the primary database exceeds the property value.
The property value is expressed in seconds. A value of 0 seconds results in no
warnings being generated.
Category Description
Datatype Number
Valid values >=0
Broker default 30 seconds
Imported? No
Parameter class Not applicable
Role Standby database, far sync instance
Standby type Physical, logical, or snapshot standby, or a far sync instance
Corresponds to Not applicable
Scope Database, far sync instance
Cloud Control name Not applicable
8.3.44 TransportLagThreshold
The TransportLagThreshold configurable property can be used to generate a warning
status for a logical, physical, or snapshot standby, or a far sync instance when the
member's transport lag exceeds the property value.
The property value is expressed in seconds. A value of 0 seconds results in no
warnings being generated when a transport lag exists.
Category Description
Datatype Number
Valid values >=0
Broker default 30 seconds
Imported? No
Parameter class Not applicable
8-56
Chapter 8
Configurable Properties
Category Description
Role Standby database, far sync instance
Standby type Physical, logical, or snapshot standby, or a far sync instance
Corresponds to Not applicable
Scope Database, far sync instance
Cloud Control name Not applicable
8-57
9
Troubleshooting Oracle Data Guard
Use this information about common issues and resolutions to maintain your Oracle
Data Guard environment.
• Sources of Diagnostic Information
• General Problems and Solutions
• Troubleshooting Problems During a Switchover Operation
• Troubleshooting Problems During a Failover Operation
• Troubleshooting Problems with the Observer
Note:
The DGMGRL -logfile option is deprecated as of Oracle Database 12c
Release 2 (12.2.0.1). It is supported for backward compatibility only.
Instead, the log file should now be specified using the LOGFILE IS clause on
the START OBSERVER command.
9-1
Chapter 9
General Problems and Solutions
9.2.1 ORA-16596: database not part of the Oracle Data Guard broker
configuration
A request was issued to the broker, but the database instance through which you have
connected is no longer a part of the broker configuration.
Solution
Reconnect to the configuration through another database that you know is part of the
broker configuration. Confirm that a database exists in the broker configuration that
has a name that matches the db_unique_name value of the database that returned the
ORA-16596 error.
This problem can also occur if you attempt to enable a configuration, but the broker
configuration file for one of its databases was accidentally removed or is outdated. In
this case, remove the database from the broker configuration, manually delete the
configuration file for that standby database (not for the primary database), and try
again to enable the configuration. After the configuration is enabled, you can either
use the Cloud Control Add Standby Database wizard and choose the Add existing
standby database option, or you can use the DGMGRL command-line interface and
issue the ADD DATABASE command.
Solution
To narrow down the problem, do the following:
• Verify that the state of the primary database is in the TRANSPORT-ON state (not
TRANSPORT-OFF).
• Verify that the value of the LogShipping database property of the standby database
in question is ON.
9-2
Chapter 9
General Problems and Solutions
• Check the status of the redo transport services on the primary database using the
LogXptStatus monitorable property. If redo transport services have an error, then
use the error message to determine further checking and resolution action. For
example:
– If the error indicates the standby database is not available, you need to restart
the standby database.
– If the error indicates no listener, you need to restart the listener.
– If the error indicates the standby database has no local destination, you need
to set up a standby location to store archived redo log files from the primary
database.
9.2.3 Many Log Files Are Received on a Standby Database But Not
Applied
By viewing the Performance page or Log File Details page in Cloud Control, you have
determined that the standby database accumulates too many log files without applying
them.
Solution
There are many possible reasons why archived redo log files might not be applied to
the standby database. Investigate why the log files are building up and rule out the
valid reasons.
See Also:
Oracle Data Guard Command-Line Interface Reference for additional
information about disabling the database using the DGMGRL command-
line interface
9-3
Chapter 9
General Problems and Solutions
See Also:
Oracle Data Guard Broker Properties for additional information about the
LogShipping database property
• Check to see if log files are building up because the value of the DelayMins
property is set too large. (Log apply services will delay applying the archived redo
log files on the standby database for the number of minutes specified.)
See Also:
Oracle Data Guard Broker Properties for additional information about the
DelayMins database property
• If you cannot see any errors, compare the archive rate to the apply rate on the
Performance page in Cloud Control to see if the apply rate is lower than the
archive rate.
9-4
Chapter 9
Troubleshooting Problems During a Switchover Operation
See Prerequisites for more information about this, and other prerequisites, for
using the broker.
3. Confirm that the static service name is registered with the listener specified in the
StaticConnectIdentifer configurable property value by using the Listener Control
utility's status command. If the static service name is properly registered with the
listener, it will be included in the output generated by the following command:
lsnrctl status
4. If you are working in an Oracle RAC environment, you may want to repeat steps 1
and 2 for each instance to ensure that a static service name is properly registered
with its respective listener.
9-5
Chapter 9
Troubleshooting Problems During a Failover Operation
standby database is allowed only when the value of the FS_FAILOVER_STATUS column in
the V$DATABASE view on the target standby database is either READY or SUSPENDED.
See Also:
When Fast-Start Failover Is Enabled and the Observer Is Running
9-6
Chapter 9
Troubleshooting Problems with the Observer
Note:
You can enable or disable the broker configuration using DGMGRL ENABLE
CONFIGURATION and DISABLE CONFIGURATION commands. You cannot disable the
configuration using Cloud Control. You can only enable the configuration using
Cloud Control if it was previously disabled using DGMGRL.
Use the DGMGRL SHOW CONFIGURATION VERBOSE command to determine the location of
the observer that is currently associated with the broker configuration.
9-7
Chapter 9
Troubleshooting Problems with the Observer
Configuration - DRSolution
Properties:
FastStartFailoverThreshold = '30'
OperationTimeout = '30'
TraceLevel = 'USER'
FastStartFailoverLagLimit = '30
CommunicationTimeout = '180'
ObserverReconnect = '0'
FastStartFailoverAutoReinstate = 'TRUE'
FastStartFailoverPmyShutdown = 'TRUE'
BystandersFollowRoleChange = 'ALL'
ObserverOverride = 'FALSE'
ExternalDestination1 = ''
ExternalDestination2 = ''
PrimaryLostWriteAction = 'CONTINUE'
ConfigurationWideService = 'North_Sales_CFG'
Threshold: 30 seconds
Target: South_Sales
Observer: observer.example.com
Lag Limit: 30 seconds (not in use)
Shutdown Primary: TRUE
Auto-reinstate: TRUE
Observer Reconnect: (none)
Observer Override: FALSE
Configuration Status:
SUCCESS
Configuration - DRSolution
9-8
Chapter 9
Troubleshooting Problems with the Observer
Properties:
FastStartFailoverThreshold = '30'
OperationTimeout = '30'
TraceLevel = 'USER'
FastStartFailoverLagLimit = '30'
CommunicationTimeout = '180'
ObserverReconnect = '0'
FastStartFailoverAutoReinstate = 'TRUE'
FastStartFailoverPmyShutdown = 'TRUE'
BystandersFollowRoleChange = 'ALL'
ObserverOverride = 'FALSE'
ExternalDestination1 = ''
ExternalDestination2 = ''
PrimaryLostWriteAction = 'CONTINUE'
ConfigurationWideService = 'North_Sales_CFG'
Threshold: 30 seconds
Target: South_Sales
Observer: observer.example.com
Lag Limit: 30 seconds (not in use)
Shutdown Primary: TRUE
Auto-reinstate: TRUE
Observer Reconnect: (none)
Observer Override: FALSE
Configuration Status:
WARNING
3. Note that you do not need to issue the DGMGRL SHOW CONFIGURATION command to
verify that the observer has actually stopped. Successful completion of the
DGMGRL STOP OBSERVER command will allow a new observer to become
associated with the configuration.
All the observer output is then recorded in a file named observer.log in the current
working directory where you issued the DGMGRL command. If the specified log file is
not accessible, then the observer output is sent to standard output as though a log file
had not been specified.
9-9
Chapter 9
Troubleshooting Problems with the Observer
Note that this is not only useful for troubleshooting problems with the observer, but
also for troubleshooting problems with fast-start failover in general.
Note:
The DGMGRL -logfile option is deprecated as of Oracle Database 12c
Release 2 (12.2.0.1). The information in this section is supported for backward
compatibility only. Instead, the log file should now be specified using the
LOGFILE IS clause on the START OBSERVER command.
9-10
A
Oracle Data Guard Broker Upgrading and
Downgrading
Use these topics to upgrade or downgrade Oracle databases and Oracle Enterprise
Manager Cloud Control (Cloud Control) in a broker configuration.
• Upgrading from Oracle Database 9i Release 2 (9.2) to Oracle Database 12c
• Upgrading from Oracle Database 10g and Oracle Database 11g to Oracle
Database 12c
• Downgrading from Oracle Database 12c
See Also:
Oracle Data Guard Installation
A-1
Appendix A
Upgrading from Oracle Database 10g and Oracle Database 11g to Oracle Database 12c
See Also:
My Oracle Support note 787461.1 at http://support.oracle.com for
information about which versions of Enterprise Manager Cloud Control
(formerly called Grid Control) are required to manage the full set of Oracle
Data Guard features in various Oracle Database releases
5. If you are using DGMGRL running on Oracle Database 9i Release 2 (9.2), then
you must upgrade to DGMGRL running on Oracle Database 12c Release 2 (12.2):
• DGMGRL running on Oracle Database 9i Release 2 (9.2) is not compatible
with Oracle Data Guard running on Oracle Database 12c Release 2 (12.2).
• DGMGRL running on Oracle Database 12c Release 2 (12.2) is not compatible
with Oracle Data Guard running on Oracle Database 9i Release 2 (9.2).
Note:
Oracle Database 12c command-line scripts are not supported in
Oracle9i.
Note:
Prior to Oracle Database 11g Release 2 (11.2), the configuration file was
restricted to reside only on disks having the same sector size (physical block
size) as that upon which the file was initially created. This was not a problem
because there was typically a single sector size in use within a given broker
configuration. In anticipation of having mixed sector sizes somewhere within a
given broker configuration, the broker configuration file is now completely
insensitive to the underlying sector size, so long as the sector size is 4KB or
less.
Conversion of the configuration file to be insensitive to the underlying sector
size occurs during the upgrade processing in Step 5 below.
The following steps use Oracle Database 12c Release 2 (12.2), but you could
substitute Oracle Database 12c Release 1 (12.1).
A-2
Appendix A
Upgrading from Oracle Database 10g and Oracle Database 11g to Oracle Database 12c
Note:
Existing DGMGRL command-line scripts for Oracle Database 10g and
Oracle Database 11g are supported by the DGMGRL command-line
interface available in Oracle Database 12c Release 2 (12.2).
DGMGRL command-line scripts for Oracle Database 11g are not
guaranteed to be supported by Oracle Database 10g.
5. After the upgrade to Oracle Database 12c Release 2 (12.2), start the broker. For
example:
a. Issue the following SQL*Plus statements to start the broker:
SQL> ALTER SYSTEM SET DG_BROKER_START=TRUE;
b. Issue the following DGMGRL command to enable the broker's active
management of the databases in the Oracle Data Guard configuration:
DGMGRL> ENABLE CONFIGURATION;
The first time the broker starts on Oracle Database 12c Release 2 (12.2) it detects
the existence of the Oracle Database 10g and Oracle Database 11g broker
configuration files. It automatically upgrades them to include any new properties
that were introduced in Oracle Database 12c Release 2 (12.2). This automatic
conversion is transparent, permanent, and occurs only once.
A-3
Appendix A
Downgrading from Oracle Database 12c
Note:
As of this automatic upgrade that occurs in Step 5, the configuration file
may henceforth reside on a disk having any supported disk sector size
(physical block size) up to and including 4KB sectors.
Note:
The observer that was started prior to the upgrade will automatically be
stopped and unable to observe the configuration once the upgrade is complete.
You must use an Oracle Database 12c version of the Oracle Observer software
to observe Oracle databases running on Oracle Database 12c Release 2 (12.2)
or higher.
A-4
Appendix A
Downgrading from Oracle Database 12c
• Invoke Enterprise Manager, the Oracle Data Guard Manager, or the DGMGRL
command-line interface and re-create the broker configuration.
A-5
Glossary
apply instance
In an Oracle Real Application Clusters (Oracle RAC) databases environment, the
apply instance is the one instance applying archived redo data to a standby database.
broker
A distributed management framework that automates and simplifies most of the
complex operations required to create, control, and monitor an Oracle Data Guard
configuration.
broker configuration
A logical grouping of the primary and standby databases (including redo transport
services and log apply services) of an Oracle Data Guard configuration.
configuration object
A named collection of database objects. It is an abstraction of an Oracle Data Guard
configuration.
database guard
The database guard controls whether or not modifications can be made to the tables in
a logical standby database.
database object
A named object that corresponds to a primary or standby database in an Oracle Data
Guard configuration. The broker uses this object to manage and control the state of a
single database and to associate properties with the database.
Glossary-1
Glossary
• Number of standby databases and far sync instances associated with a primary
database
• Network configuration
default state
The initial runtime state in which the database object will run when you enable broker
management of the configuration. The actual default state can vary depending on the
role (primary or standby) in which the database is running.
failover
Failover changes a standby database into the role of a primary database and disables
the old primary database.
fast-start failover
Enables a failover automatically when the primary database becomes unavailable.
When fast-start failover is enabled, the broker determines if a failover is necessary and
Glossary-2
Glossary
automatically, quickly, and reliably fails over to a designated standby without requiring
that you perform any manual steps to invoke the failover.
instance object
A named object; a database object is a collection of one or more named instance
objects. The broker uses this object to manage and control the state of the database
with which the instance is associated, and to associate instance-specific properties
with this instance of the database.
intended state
The runtime state of a database object while it is enabled for management by the
broker.
The term "lights out" originated from when computing centers were located in one
room and contained a number of servers that were kept under lock and key and in the
dark. Under normal operation, the room was not entered by human administrators, and
all operations in the room were automated.
manual failover
A failover that is initiated by the DBA who first determines a failover is necessary and
then invokes one by clicking FAILOVER in Enterprise Manager or by issuing the
DGMGRL FAILOVER command. The word manual is used to contrast this type of failover
with a fast-start failover.
Glossary-3
Glossary
observer
A DGMGRL client that continuously monitors the primary and target standby
databases, evaluates whether failover is necessary, and initiates a fast-start failover
when conditions warrant.
primary database
A production database from which one or more standby databases is created and
maintained. Every standby database is associated with one and only one primary
database. A single primary database can, however, support multiple standby
databases. The Oracle Data Guard broker monitor (DMON) maintains the master copy
of the binary configuration file with the primary database, ensuring that each standby
database's copy of the file is kept up to date as changes are made.
The broker refers to this database using the value in the DB_UNIQUE_NAME initialization
parameter which is defined to be globally unique.
read-only mode
A mode in which a database can be opened that allows queries, but disallows
modifications.
Redo Apply
A physical standby database is kept synchronized with the primary database through
Redo Apply, which recovers the redo data received from the primary database and
applies the redo to the physical standby database.
reinstatement
Reinstatement is the process of turning a database, including the old primary
database, that had been disabled after a failover operation into a viable standby
database for the new primary database. Flashback database must be enabled on a
database in order to reinstate it.
Glossary-4
Glossary
SQL Apply
A logical standby database is kept synchronized with the primary database through
SQL Apply, which transforms the data in the redo received from the primary database
into SQL statements and then executes the SQL statements on the standby database.
standby database
A copy of a primary database created using a backup of your primary database.
Standby databases are kept synchronized with the primary database by applying
archived redo data over time from the primary database to each standby database.
The standby database can take over processing from the primary database, providing
nearly continuous database availability. A standby database has its own server
parameter file, control file, and data files. It also has a copy of the broker's
configuration file, kept up to date at the direction of the DMON process running in the
primary database instance.
The broker refers to a standby database by its globally unique name that is stored in
its DB_UNIQUE_NAME initialization parameter.
See also logical standby database, physical standby database and snapshot standby
database.
Glossary-5
Index
A before you use DGMGRL, 6-1
benefits
ADD DATABASE command, 7-10 Data Guard broker, 1-5
ADD FAR_SYNC command, 7-11 high availability, 1-5
Add Standby Database wizard scalability, 1-5
creating a broker configuration, 3-8 with Oracle Real Application Clusters, 1-5
definition, 1-9 Binding property, 8-26
introduction, 1-9 broker
altering components, 1-8
properties configuration, 1-1
database, 6-15 Data Guard configuration file, 1-12
states drc* log files, 9-1
database, 6-16 introduction, 1-2
application continuity user interfaces, 1-9
support in Oracle Data Guard broker, 5-60 broker configurations
application integration, 1-5 benefits, 1-5
apply instance, 4-21 changing roles, 3-8
failover, 4-21 creating, 6-2
PreferredApplyInstance property, 4-22 Data Guard configuration file, 1-10
selecting, 4-22 disabling databases, 3-11, 7-17
ApplyInstanceTimeout property, 8-24 effects of removing metadata from, 7-50
ApplyLagThreshold property, 8-24 enabling, 6-7, 7-35
ApplyParallel property, 8-25 enabling databases, 3-8, 3-11, 6-7, 7-35
architecture enabling fast-start failover, 7-37
Data Guard broker, 1-8 health, 1-10, 3-12
ARCHIVE_LAG_TARGET initialization parameter life cycle, 3-8
setting in a broker configuration, 8-26 management, 1-9, 1-10, 1-12
archived redo logs monitoring, 6-30
destination and configuration parameters, 3-1 Oracle Net Services configuration, 1-6, 1-9
in a Data Guard configuration, 3-1 properties, 4-5
primary database setup, 2-2 protection modes, 7-21
ArchiveLagTarget property, 8-26 setting protection mode, 4-25
ASYNC redo transport service, 4-10 status modes, 3-12
supported, 3-1
broker processes
B monitoring, 1-10
background processes bystander standby databases, 5-5
DMON, 1-10 reintegrating into configuration, 5-12
banners BystandersFollowRoleChange property, 8-3
suppressing from DGMGRL command-line
interface output, 7-1 C
batch programs
using Data Guard command-line interface CDBs
(DGMGRL), 7-1 Data Guard broker support, 1-4
before you perform a switchover, 5-5 CFS
Index-1
Index
Index-2
Index
Data Guard command-line interface (continued) Data Guard command-line interface (DGMGRL) (continued)
commands (continued) commands (continued)
ENABLE FAST_START FAILOVER, REMOVE CONFIGURATION, 7-50
7-37 REMOVE DATABASE, 7-51
SET STATE, 4-22 REMOVE FAR_SYNC, 7-52
DG_BROKER_START initialization REMOVE INSTANCE, 7-53
parameter, 2-2 SHOW CONFIGURATION, 7-58, 7-61
enabling a database, 6-7 SHOW DATABASE, 7-62
introduction, 1-10 SHOW FAR_SYNC, 7-65
Data Guard command-line interface (DGMGRL), SHOW FAST_START FAILOVER, 7-67
6-1 SHOW INSTANCE, 7-68
banners from output, 7-1 SHUTDOWN, 7-74
commands SQL, 7-76
ADD DATABASE, 7-10 START OBSERVER, 7-77
ADD FAR_SYNC, 7-11 STARTUP, 7-82
CONVERT DATABASE, 7-14 STOP OBSERVER, 7-83
CREATE CONFIGURATION, 7-15 SWITCHOVER, 6-21, 7-85
DISABLE CONFIGURATION, 7-17 VALIDATE DATABASE, 7-88
DISABLE DATABASE, 7-17 VALIDATE FAR_SYNC, 7-96
DISABLE FAR_SYNC, 7-15, 7-18 creating a configuration, 6-2
DISABLE FAST_START FAILOVER, DG_BROKER_START initialization
7-18 parameter, 7-6
DISABLE FAST_START FAILOVER enabling the configuration, 6-7
CONDITION, 7-19 monitoring broker configurations, 6-30
EDIT CONFIGURATION (property), 7-20 performing routine management tasks, 6-15
EDIT CONFIGURATION (protection prerequisites, 6-1
mode), 7-21 setting critical database properties, 6-5
EDIT CONFIGURATION (RENAME), setting up standby redo log files, 4-27
7-15, 7-23 single command mode, 7-1
EDIT CONFIGURATION RESET starting, 7-1
(Property), 7-15, 7-24 stopping, 7-8
EDIT DATABASE (Property), 7-15, 7-24 string values, 7-7
EDIT DATABASE (rename), 7-26 summary of commands, 7-3
EDIT DATABASE (state), 7-26 suppressing command prompts, 7-1
EDIT DATABASE RESET (Property), Data Guard configuration file
7-27 for an Oracle RAC database, 3-5
EDIT FAR_SYNC, 7-28 in a CFS area, 3-6
EDIT FAR_SYNC RESET (Property), inconsistent values from server parameter
7-28 file, 8-15
EDIT INSTANCE (AUTO PFILE), 7-29 relationship to DMON process, 1-10
EDIT INSTANCE (property), 7-30, 7-31 setting up, 3-4
EDIT INSTANCE RESET (Property), Data Guard configurations
7-31 automated creation of, 1-6
ENABLE CONFIGURATION, 7-35 background, 3-1
ENABLE DATABASE, 7-36 Data Guard monitor (DMON), 1-10
ENABLE FAR_SYNC, 7-37 interaction with the Oracle database, 1-10
ENABLE FAST_START FAILOVER, managing objects, 3-2, 3-8, 6-7
7-37 Oracle database background processes,
ENABLE FAST_START FAILOVER 1-10
CONDITION, 7-39 overview, 1-10
EXIT, 7-41 two-way network communication, 1-10
FAILOVER, 6-26 data protection modes
HELP, 7-44 See protection modes
QUIT, 7-49 database resources
REINSTATE DATABASE, 7-49 monitoring, 1-8
3
Index
Index-4
Index
5
Index
Index-6
Index
7
Index
Index-8
Index
9
Index
Index-10
Index
11