The new Oracle 21c delivered a new feature for Data Guard Broker called VALIDATE FAST_START FAILOVER. As you can imagine, helps you do validate your configuration and you can check some information at the official doc.
Syntax
The syntax is simple and has no parameters. Just VALIDATE FAST_START FAILOVER:
DGMGRL> help validate Performs an exhaustive set of validations for a member Syntax: VALIDATE DATABASE [VERBOSE] <database name>; VALIDATE DATABASE [VERBOSE] <database name> DATAFILE <datafile number> OUTPUT=<file name>; VALIDATE DATABASE [VERBOSE] <database name> SPFILE; VALIDATE DATABASE [VERBOSE] <database name> STRICT { TEMP_FILES | FLASHBACK | LOG_FILES_CLEARED | LOG_FILE_CONFIGURATION | APPLY_PROPERTY | TRANSPORT_PROPERTY | ALL } [ <strict option> ... <strict option> ]; VALIDATE FAR_SYNC [VERBOSE] <far_sync name> [WHEN PRIMARY IS <database name>]; VALIDATE NETWORK CONFIGURATION FOR { ALL | <member name> }; VALIDATE STATIC CONNECT IDENTIFIER FOR { ALL | <database name> }; VALIDATE FAST_START FAILOVER; DGMGRL>
And can be used even with FAST_TART failover disabled:
DGMGRL> VALIDATE FAST_START FAILOVER; Fast-Start Failover: Disabled Protection Mode: MaxAvailability Primary: ora21dg Fast-start failover not possible: Fast-start failover is disabled. Other issues: Fast-start failover threshold may be too low for RAC databases. DGMGRL>
Reports
The report is clear and can bring several details. From the failover mode, until the syntax is wrong since some callout script. Some examples are below:
MaxAvaliability
DGMGRL> VALIDATE FAST_START FAILOVER; Fast-Start Failover: Enabled in Zero Data Loss Mode Protection Mode: MaxAvailability Primary: ora21dg Active Target: ora21dgs Fast-start failover not possible: Fast-start failover observer is no longer observing target database. Other issues: Fast-start failover threshold may be too low for RAC databases. DGMGRL>
As you can see above, it reports that the observer of my configuration is down and my FastStartFailoverThreshold is too small for RAC (my test environment). Other information is that since I am running at MaxAvaliability and in SYNC mode, I am running at Zero Data Loss mode.
MaxPerformance
DGMGRL> VALIDATE FAST_START FAILOVER; Fast-Start Failover: Enabled in Potential Data Loss Mode Protection Mode: MaxPerformance Primary: ora21dg Active Target: ora21dgs Other issues: Fast-start failover threshold may be too low for RAC databases. DGMGRL>
Since is running now in MaxPerformance report that you can have data loss in case of failover.
Failover in Observer Only mode
DGMGRL> VALIDATE FAST_START FAILOVER; Fast-Start Failover: Enabled in Observe-Only Mode Protection Mode: MaxAvailability Primary: ora21dg Active Target: ora21dgs Fast-start failover not possible: Fast-start failover is enabled in observe-only mode. Other issues: Fast-start failover threshold may be too low for RAC databases. DGMGRL>
No validation issues
DGMGRL> VALIDATE FAST_START FAILOVER Fast-Start Failover: Enabled in Zero Data Loss Mode Protection Mode: MaxAvailability Primary: ora21dg Active Target: ora21dgs DGMGRL>
Show command
The validation, until now, has no much information yet (probably more will be added in the future). From now, the more comprehensive report is the show fast_start failover:
DGMGRL> show fast_start failover; Fast-Start Failover: Enabled in Zero Data Loss Mode Protection Mode: MaxAvailability Lag Limit: 0 seconds Threshold: 30 seconds Ping Interval: 3000 milliseconds Ping Retry: 0 Active Target: ora21dgs Potential Targets: "ora21dgs" ora21dgs valid Observer: oel8n1.oralocal Shutdown Primary: TRUE Auto-reinstate: TRUE Observer Reconnect: (none) Observer Override: FALSE Configurable Failover Conditions Health Conditions: Corrupted Controlfile YES Corrupted Dictionary YES Inaccessible Logfile NO Stuck Archiver NO Datafile Write Errors YES Oracle Error Conditions: (none) DGMGRL>
For fast_start failover options and parameters, I wrote in another blog post.
Disclaimer: “The postings on this site are my own and don’t necessarily represent my actual employer positions, strategies or opinions. The information here was edited to be useful for general purpose, specific data and identifications were removed to allow reach the generic audience and to be useful for the community. Post protected by copyright.”