Option 1: Use Data Guard Broker to Configure Real-Time Redo Transport

This task enables Data Guard Broker parameters that establish failover of real-time redo transport from the upstream to the downstream Recovery Appliance.

  1. Enable the dg_broker* parameters from a SQLPLUS session as sysdba.
    $ sqlplus / as sysdba
    
    SQL> alter system set
    dg_broker_config_file1='+DATAC1/cdb122dr/dr1cdb122dr.dat';
    System altered.
    
    SQL> alter system set
    dg_broker_config_file2='+DATAC1/cdb122dr/dr2cdb122dr.dat';
    System altered.
    
    SQL> alter system set dg_broker_start=true;
    System altered.
  2. Configure Data Guard Broker with respect to the primary databases, connection identifiers for the Recovery Appliances, network timeouts, and maximum number of failures. In the end, enable the configuration changes.
    $ dgmgrl sys/myPassword
    
    DGMGRL for Linux: Release 12.2.0.1.0 - Production on Tue Jun 5 11:37:44 2018
    
    Copyright (c) 1982, 2017, Oracle and/or its affiliates. All rights reserved.
    
    Welcome to DGMGRL, type "help" for information.
    Connected to "cdb122dr"
    Connected as SYSDG.
    
    DGMGRL> create configuration cdb122dr as primary database is cdb122dr connect
    identifier is '//scam06-scan3/cdb122dr';
    Configuration "cdb122dr" created with primary database "cdb122dr"
    
    DGMGRL> add recovery_appliance rahadr1 as connect identifier is 'dr_rahadr1';
    Recovery Appliance "rahadr1" added
    
    DGMGRL> add recovery_appliance rahadr2 as connect identifier is 'dr_rahadr2';
    Recovery Appliance "rahadr2" added
    
    DGMGRL> edit recovery_appliance rahadr1 set property MaxFailure=1;
    Property "maxfailure" updated
    
    DGMGRL> edit recovery_appliance rahadr1 set property ReopenSecs=10;
    Property "reopensecs" updated
    
    DGMGRL> edit recovery_appliance rahadr1 set property NetTimeout=8;
    Property "nettimeout" updated
    
    DGMGRL> edit recovery_appliance rahadr2 set property MaxFailure=1;
    Property "maxfailure" updated
    
    DGMGRL> edit recovery_appliance rahadr2 set property NetTimeout=8;
    Property "nettimeout" updated
    
    DGMGRL> edit database cdb122dr set property RedoRoutes = '(LOCAL : (rahadr1
    async priority=1, rahadr2 async priority=2))';
    Warning: ORA-16677: Standby database has the same or higher priority than
    other members specified in the RedoRoutes group.
    Property "redoroutes" updated
    
    DGMGRL> enable configuration;
    Enabled.

Note:

If Redo Transport does not start, then you may need to bounce the protected database. For a RAC database, this can be done in a rolling fashion.