Step-By-Step Method to configure DG Broker in Oracle 19c RAC Standby Database.
In this practice we will be enabling DG Broker in Oracle 19c having RAC primary and RAC standby database .
1=> Environement Currently we are having below environment. 2=> Adding STATIC Entry in Both side of LISTENER as below. -> PRIMARY (as grid user) -> NODE1 [oracle@racsetn1 ~]$ su - grid Password: [grid@racsetn1 ~]$ cat $ORACLE_HOME/network/admin/listener.ora LISTENER=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER)))) # line added by Agent LISTENER_SCAN3=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER_SCAN3))))# line added by Agent LISTENER_SCAN2=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER_SCAN2))))# line added by Agent LISTENER_SCAN1=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER_SCAN1))))# line added by Agent ASMNET1LSNR_ASM=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=ASMNET1LSNR_ASM)))) # line added by Agent ENABLE_GLOBAL_DYNAMIC_ENDPOINT_ASMNET1LSNR_ASM=ON # line added by Agent VALID_NODE_CHECKING_REGISTRATION_ASMNET1LSNR_ASM=SUBNET # line added by Agent ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER_SCAN1=ON # line added by Agent VALID_NODE_CHECKING_REGISTRATION_LISTENER_SCAN1=OFF # line added by Agent - Disabled by Agent because REMOTE_REGISTRATION_ADDRESS is set ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER_SCAN2=ON # line added by Agent VALID_NODE_CHECKING_REGISTRATION_LISTENER_SCAN2=OFF # line added by Agent - Disabled by Agent because REMOTE_REGISTRATION_ADDRESS is set ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER_SCAN3=ON # line added by Agent VALID_NODE_CHECKING_REGISTRATION_LISTENER_SCAN3=OFF # line added by Agent - Disabled by Agent because REMOTE_REGISTRATION_ADDRESS is set ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER=ON # line added by Agent VALID_NODE_CHECKING_REGISTRATION_LISTENER=SUBNET # line added by Agent SID_LIST_LISTENER= (SID_LIST= (SID_DESC= (GLOBAL_DBNAME=NTNT_DGMGRL.ace2oracle.lab) (ORACLE_HOME=/ora_home/app/19c/db) (SID_NAME=NTNT1) ) ) [grid@racsetn1 ~]$ [grid@racsetn1 ~]$ lsnrctl reload LSNRCTL for Linux: Version 19.0.0.0.0 - Production on 02-FEB-2023 19:21:00 Copyright (c) 1991, 2019, Oracle. All rights reserved. Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER))) The command completed successfully [grid@racsetn1 ~]$ lsnrctl status LSNRCTL for Linux: Version 19.0.0.0.0 - Production on 02-FEB-2023 19:22:56 Copyright (c) 1991, 2019, Oracle. All rights reserved. Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER))) STATUS of the LISTENER ------------------------ Alias LISTENER Version TNSLSNR for Linux: Version 19.0.0.0.0 - Production Start Date 02-FEB-2023 16:22:31 Uptime 0 days 3 hr. 0 min. 25 sec Trace Level off Security ON: Local OS Authentication SNMP OFF Listener Parameter File /grid_home/app/19c/grid/network/admin/listener.ora Listener Log File /grid_home/app/oracle/diag/tnslsnr/racsetn1/listener/alert/log.xml Listening Endpoints Summary... (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=LISTENER))) (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.56.108)(PORT=1521))) (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.56.110)(PORT=1521))) Services Summary... Service "+ASM" has 1 instance(s). Instance "+ASM1", status READY, has 1 handler(s) for this service... Service "+ASM_DATA" has 1 instance(s). Instance "+ASM1", status READY, has 1 handler(s) for this service... Service "+ASM_FRA" has 1 instance(s). Instance "+ASM1", status READY, has 1 handler(s) for this service... Service "+ASM_OCR" has 1 instance(s). Instance "+ASM1", status READY, has 1 handler(s) for this service... Service "NTNT.ace2oracle.lab" has 1 instance(s). Instance "NTNT1", status READY, has 1 handler(s) for this service... Service "NTNTXDB.ace2oracle.lab" has 1 instance(s). Instance "NTNT1", status READY, has 1 handler(s) for this service... Service "NTNT_DGMGRL.ace2oracle.lab" has 1 instance(s). Instance "NTNT1", status UNKNOWN, has 1 handler(s) for this service... The command completed successfully [grid@racsetn1 ~]$ -> PRIMARY (as grid user) -> NODE2 [grid@racsetn1 ~]$ ssh racsetn2 [grid@racsetn2 ~]$ cat $ORACLE_HOME/network/admin/listener.ora LISTENER_SCAN3=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER_SCAN3))))# line added by Agent LISTENER_SCAN2=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER_SCAN2))))# line added by Agent LISTENER=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER)))) # line added by Agent LISTENER_SCAN1=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER_SCAN1))))# line added by Agent ASMNET1LSNR_ASM=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=ASMNET1LSNR_ASM)))) # line added by Agent ENABLE_GLOBAL_DYNAMIC_ENDPOINT_ASMNET1LSNR_ASM=ON # line added by Agent VALID_NODE_CHECKING_REGISTRATION_ASMNET1LSNR_ASM=SUBNET # line added by Agent ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER_SCAN1=ON # line added by Agent VALID_NODE_CHECKING_REGISTRATION_LISTENER_SCAN1=OFF # line added by Agent - Disabled by Agent because REMOTE_REGISTRATION_ADDRESS is set ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER=ON # line added by Agent VALID_NODE_CHECKING_REGISTRATION_LISTENER=SUBNET # line added by Agent ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER_SCAN2=ON # line added by Agent VALID_NODE_CHECKING_REGISTRATION_LISTENER_SCAN2=OFF # line added by Agent - Disabled by Agent because REMOTE_REGISTRATION_ADDRESS is set ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER_SCAN3=ON # line added by Agent VALID_NODE_CHECKING_REGISTRATION_LISTENER_SCAN3=OFF # line added by Agent - Disabled by Agent because REMOTE_REGISTRATION_ADDRESS is set SID_LIST_LISTENER= (SID_LIST= (SID_DESC= (GLOBAL_DBNAME=NTNT_DGMGRL.ace2oracle.lab) (ORACLE_HOME=/ora_home/app/19c/db) (SID_NAME=NTNT2) ) ) [grid@racsetn2 ~]$ [grid@racsetn2 ~]$ lsnrctl reload LSNRCTL for Linux: Version 19.0.0.0.0 - Production on 02-FEB-2023 19:22:48 Copyright (c) 1991, 2019, Oracle. All rights reserved. Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER))) The command completed successfully [grid@racsetn2 ~]$ [grid@racsetn2 ~]$ [grid@racsetn2 ~]$ lsnrctl status LSNRCTL for Linux: Version 19.0.0.0.0 - Production on 02-FEB-2023 19:51:46 Copyright (c) 1991, 2019, Oracle. All rights reserved. Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER))) STATUS of the LISTENER ------------------------ Alias LISTENER Version TNSLSNR for Linux: Version 19.0.0.0.0 - Production Start Date 02-FEB-2023 16:24:08 Uptime 0 days 3 hr. 27 min. 37 sec Trace Level off Security ON: Local OS Authentication SNMP OFF Listener Parameter File /grid_home/app/19c/grid/network/admin/listener.ora Listener Log File /grid_home/app/oracle/diag/tnslsnr/racsetn2/listener/alert/log.xml Listening Endpoints Summary... (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=LISTENER))) (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.56.109)(PORT=1521))) (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.56.111)(PORT=1521))) Services Summary... Service "+ASM" has 1 instance(s). Instance "+ASM2", status READY, has 1 handler(s) for this service... Service "+ASM_DATA" has 1 instance(s). Instance "+ASM2", status READY, has 1 handler(s) for this service... Service "+ASM_FRA" has 1 instance(s). Instance "+ASM2", status READY, has 1 handler(s) for this service... Service "+ASM_OCR" has 1 instance(s). Instance "+ASM2", status READY, has 1 handler(s) for this service... Service "NTNT.ace2oracle.lab" has 1 instance(s). Instance "NTNT2", status READY, has 1 handler(s) for this service... Service "NTNTXDB.ace2oracle.lab" has 1 instance(s). Instance "NTNT2", status READY, has 1 handler(s) for this service... Service "NTNT_DGMGRL.ace2oracle.lab" has 1 instance(s). Instance "NTNT2", status UNKNOWN, has 1 handler(s) for this service... The command completed successfully [grid@racsetn2 ~]$ logout -> STANDBY (as grid user) -> NODE-1 [grid@racnoden1 ~]$ lsnrctl status LSNRCTL for Linux: Version 19.0.0.0.0 - Production on 02-FEB-2023 19:15:46 Copyright (c) 1991, 2019, Oracle. All rights reserved. Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER))) STATUS of the LISTENER ------------------------ Alias LISTENER Version TNSLSNR for Linux: Version 19.0.0.0.0 - Production Start Date 02-FEB-2023 16:26:37 Uptime 0 days 2 hr. 49 min. 14 sec Trace Level off Security ON: Local OS Authentication SNMP OFF Listener Parameter File /grid_home/app/19c/grid/network/admin/listener.ora Listener Log File /grid_home/app/oracle/diag/tnslsnr/racnoden1/listener/alert/log.xml Listening Endpoints Summary... (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=LISTENER))) (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.56.101)(PORT=1521))) (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.56.103)(PORT=1521))) Services Summary... Service "+ASM" has 1 instance(s). Instance "+ASM1", status READY, has 1 handler(s) for this service... Service "+ASM_DATA_REP" has 1 instance(s). Instance "+ASM1", status READY, has 1 handler(s) for this service... Service "+ASM_FRA_RECO" has 1 instance(s). Instance "+ASM1", status READY, has 1 handler(s) for this service... Service "+ASM_OCR" has 1 instance(s). Instance "+ASM1", status READY, has 1 handler(s) for this service... Service "STDBYDG.ace2oracle.lab" has 1 instance(s). Instance "STDBY1", status READY, has 1 handler(s) for this service... Service "STDBYDG_DGMGRL.ace2oracle.lab" has 1 instance(s). Instance "STDBY1", status UNKNOWN, has 1 handler(s) for this service... The command completed successfully [grid@racnoden1 ~]$ [grid@racnoden1 ~]$ cat $ORACLE_HOME/network/admin/listener.ora LISTENER=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER)))) # line added by Agent LISTENER_SCAN3=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER_SCAN3)))) # line added by Agent LISTENER_SCAN2=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER_SCAN2)))) # line added by Agent LISTENER_SCAN1=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER_SCAN1)))) # line added by Agent ASMNET1LSNR_ASM=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=ASMNET1LSNR_ASM)))) # line added by Agent ENABLE_GLOBAL_DYNAMIC_ENDPOINT_ASMNET1LSNR_ASM=ON # line added by Agent VALID_NODE_CHECKING_REGISTRATION_ASMNET1LSNR_ASM=SUBNET # line added by Agent ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER_SCAN1=ON # line added by Agent VALID_NODE_CHECKING_REGISTRATION_LISTENER_SCAN1=OFF # line added by Agent - Disabled by Agent because REMOTE_REGISTRATION_ADDRESS is set ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER_SCAN2=ON # line added by Agent VALID_NODE_CHECKING_REGISTRATION_LISTENER_SCAN2=OFF # line added by Agent - Disabled by Agent because REMOTE_REGISTRATION_ADDRESS is set ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER_SCAN3=ON # line added by Agent VALID_NODE_CHECKING_REGISTRATION_LISTENER_SCAN3=OFF # line added by Agent - Disabled by Agent because REMOTE_REGISTRATION_ADDRESS is set ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER=ON # line added by Agent VALID_NODE_CHECKING_REGISTRATION_LISTENER=SUBNET # line added by Agent SID_LIST_LISTENER= (SID_LIST= (SID_DESC= (GLOBAL_DBNAME=STDBYDG_DGMGRL.ace2oracle.lab) (ORACLE_HOME=/ora_home/app/19c/db) (SID_NAME=STDBY1) ) ) -> STANDBY (as grid user) -> NODE-2 [grid@racnoden2 ~]$ cat $ORACLE_HOME/network/admin/listener.ora LISTENER_SCAN3=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER_SCAN3)))) # line added by Agent LISTENER_SCAN2=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER_SCAN2)))) # line added by Agent LISTENER=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER)))) # line added by Agent LISTENER_SCAN1=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER_SCAN1)))) # line added by Agent ASMNET1LSNR_ASM=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=ASMNET1LSNR_ASM)))) # line added by Agent ENABLE_GLOBAL_DYNAMIC_ENDPOINT_ASMNET1LSNR_ASM=ON # line added by Agent VALID_NODE_CHECKING_REGISTRATION_ASMNET1LSNR_ASM=SUBNET # line added by Agent ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER_SCAN1=ON # line added by Agent VALID_NODE_CHECKING_REGISTRATION_LISTENER_SCAN1=OFF # line added by Agent - Disabled by Agent because REMOTE_REGISTRATION_ADDRESS is set ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER=ON # line added by Agent VALID_NODE_CHECKING_REGISTRATION_LISTENER=SUBNET # line added by Agent ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER_SCAN2=ON # line added by Agent VALID_NODE_CHECKING_REGISTRATION_LISTENER_SCAN2=OFF # line added by Agent - Disabled by Agent because REMOTE_REGISTRATION_ADDRESS is set ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER_SCAN3=ON # line added by Agent VALID_NODE_CHECKING_REGISTRATION_LISTENER_SCAN3=OFF # line added by Agent - Disabled by Agent because REMOTE_REGISTRATION_ADDRESS is set SID_LIST_LISTENER= (SID_LIST= (SID_DESC= (GLOBAL_DBNAME=STDBYDG_DGMGRL.ace2oracle.lab) (ORACLE_HOME=/ora_home/app/19c/db) (SID_NAME=STDBY2) ) ) [grid@racnoden2 ~]$ lsnrctl status LSNRCTL for Linux: Version 19.0.0.0.0 - Production on 02-FEB-2023 19:17:50 Copyright (c) 1991, 2019, Oracle. All rights reserved. Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER))) STATUS of the LISTENER ------------------------ Alias LISTENER Version TNSLSNR for Linux: Version 19.0.0.0.0 - Production Start Date 02-FEB-2023 16:24:51 Uptime 0 days 2 hr. 52 min. 59 sec Trace Level off Security ON: Local OS Authentication SNMP OFF Listener Parameter File /grid_home/app/19c/grid/network/admin/listener.ora Listener Log File /grid_home/app/oracle/diag/tnslsnr/racnoden2/listener/alert/log.xml Listening Endpoints Summary... (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=LISTENER))) (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.56.102)(PORT=1521))) (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.56.104)(PORT=1521))) Services Summary... Service "+ASM" has 1 instance(s). Instance "+ASM2", status READY, has 1 handler(s) for this service... Service "+ASM_DATA_REP" has 1 instance(s). Instance "+ASM2", status READY, has 1 handler(s) for this service... Service "+ASM_FRA_RECO" has 1 instance(s). Instance "+ASM2", status READY, has 1 handler(s) for this service... Service "+ASM_OCR" has 1 instance(s). Instance "+ASM2", status READY, has 1 handler(s) for this service... Service "STDBYDG.ace2oracle.lab" has 1 instance(s). Instance "STDBY2", status READY, has 1 handler(s) for this service... Service "STDBYDG_DGMGRL.ace2oracle.lab" has 1 instance(s). Instance "STDBY2", status UNKNOWN, has 1 handler(s) for this service... The command completed successfully 3=> Ensure proper TNS NAME resolution for Both side as below . Set TNS Entry as below on BOTH SIDE (Both nodes). [oracle@racsetn1 ~]$ cat $ORACLE_HOME/network/admin/tnsnames.ora # tnsnames.ora Network Configuration File: /ora_home/app/19c/db/network/admin/tnsnames.ora # Generated by Oracle configuration tools. NTNT_TNS = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = racset-scan)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = NTNT.ace2oracle.lab) ) ) STDBY_TNS = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = racnode-scan)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = STDBYDG.ace2oracle.lab) ) ) [oracle@racsetn1 ~]$ 4=> Check TNS resolution as below -> From Primary [oracle@racsetn1 ~]$ [oracle@racsetn1 ~]$ sqlplus sys/Oracle_4U@NTNT_TNS as sysdba SQL*Plus: Release 19.0.0.0.0 - Production on Thu Feb 2 19:58:08 2023 Version 19.3.0.0.0 Copyright (c) 1982, 2019, Oracle. All rights reserved. Connected to: Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production Version 19.3.0.0.0 SQL> Disconnected from Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production Version 19.3.0.0.0 [oracle@racsetn1 ~]$ [oracle@racsetn1 ~]$ sqlplus sys/Oracle_4U@STDBY_TNS as sysdba SQL*Plus: Release 19.0.0.0.0 - Production on Thu Feb 2 19:58:16 2023 Version 19.3.0.0.0 Copyright (c) 1982, 2019, Oracle. All rights reserved. Connected to: Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production Version 19.3.0.0.0 SQL> -> From Standby [oracle@racnoden1 trace]$ [oracle@racnoden1 trace]$ sqlplus sys/Oracle_4U@NTNT_TNS as sysdba SQL*Plus: Release 19.0.0.0.0 - Production on Thu Feb 2 19:58:40 2023 Version 19.3.0.0.0 Copyright (c) 1982, 2019, Oracle. All rights reserved. Connected to: Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production Version 19.3.0.0.0 SQL> Disconnected from Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production Version 19.3.0.0.0 [oracle@racnoden1 trace]$ sqlplus sys/Oracle_4U@STDBY_TNS as sysdba SQL*Plus: Release 19.0.0.0.0 - Production on Thu Feb 2 19:58:50 2023 Version 19.3.0.0.0 Copyright (c) 1982, 2019, Oracle. All rights reserved. Connected to: Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production Version 19.3.0.0.0 SQL> 5=>Disable LOG_ARCHIVE_DEST_2 on BOTH Side of setup. -> From Primary SQL> alter system set log_archive_dest_2='' sid='*'; System altered. -> From Standby SQL> alter system set log_archive_dest_2='' sid='*'; System altered. 6=> Enable DG Broker on Both nodes, -> From Primary SQL> ALTER SYSTEM SET dg_broker_config_file1 = '+DATA/NTNT/dr1NTNT.dat' scope=both sid='*'; System altered. SQL> ALTER SYSTEM SET dg_broker_config_file2 = '+DATA/NTNT/dr2NTNT.dat' scope=both sid='*'; System altered. SQL > ALTER SYSTEM SET DG_BROKER_START=true scope=both sid='*'; System altered. -> From Standby SQL> ALTER SYSTEM SET dg_broker_config_file1 = '+DATA_REP/STDBYDG/dr1STDBYDG.dat' scope=both sid='*'; System altered. SQL>ALTER SYSTEM SET dg_broker_config_file2 = '+DATA_REP/STDBYDG/dr2STDBYDG.dat' scope=both sid='*'; System altered. SQL> ALTER SYSTEM SET DG_BROKER_START=true scope=both sid='*'; System altered. 7=> Setup DG Broker on Both side as below, -> From Primary [oracle@racsetn1 ~]$ dgmgrl DGMGRL> connect sys/Oracle_4U@NTNT_TNS Connected to "NTNT" Connected as SYSDBA. DGMGRL> create configuration 'NTNT_PR' as primary database is 'NTNT' connect identifier is NTNT_TNS; Configuration "NTNT_PR" created with primary database "NTNT" DGMGRL> add database 'STDBYDG' as connect identifier is 'stdby_tns' maintained as physical; Database "STDBYDG" added DGMGRL> enable configuration; Enabled. -> From Standby [oracle@racnoden1 ~]$ dgmgrl DGMGRL> connect sys/Oracle_4U@STDBY_TNS Connected to "STDBYDG" Connected as SYSDBA. DGMGRL> enable configuration; Enabled. 8=> Verify Setup from Both sides -> From Primary DGMGRL> show configuration verbose; Configuration - NTNT_PR Protection Mode: MaxPerformance Members: NTNT - Primary database STDBYDG - Physical standby database 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 = 'NTNT_CFG' Fast-Start Failover: Disabled Configuration Status: SUCCESS DGMGRL> show database verbose NTNT; Database - NTNT Role: PRIMARY Intended State: TRANSPORT-ON Instance(s): NTNT1 NTNT2 Properties: DGConnectIdentifier = 'ntnt_tns' ObserverConnectIdentifier = '' FastStartFailoverTarget = '' PreferredObserverHosts = '' LogShipping = 'ON' RedoRoutes = '' LogXptMode = 'ASYNC' DelayMins = '0' Binding = 'optional' MaxFailure = '0' ReopenSecs = '300' NetTimeout = '30' RedoCompression = 'DISABLE' PreferredApplyInstance = '' ApplyInstanceTimeout = '0' ApplyLagThreshold = '30' TransportLagThreshold = '30' TransportDisconnectedThreshold = '30' ApplyParallel = 'AUTO' ApplyInstances = '0' StandbyFileManagement = '' ArchiveLagTarget = '0' LogArchiveMaxProcesses = '0' LogArchiveMinSucceedDest = '0' DataGuardSyncLatency = '0' LogArchiveTrace = '0' LogArchiveFormat = '' DbFileNameConvert = '' LogFileNameConvert = '' ArchiveLocation = '' AlternateLocation = '' StandbyArchiveLocation = '' StandbyAlternateLocation = '' InconsistentProperties = '(monitor)' InconsistentLogXptProps = '(monitor)' LogXptStatus = '(monitor)' SendQEntries = '(monitor)' RecvQEntries = '(monitor)' HostName(*) StaticConnectIdentifier(*) TopWaitEvents(*) SidName(*) (*) - Please check specific instance for the property value Log file locations(*): (*) - Check specific instance for log file locations. Database Status: SUCCESS DGMGRL> show database verbose 'STDBYDG'; Database - STDBYDG Role: PHYSICAL STANDBY Intended State: APPLY-ON Transport Lag: 0 seconds (computed 0 seconds ago) Apply Lag: 0 seconds (computed 0 seconds ago) Average Apply Rate: 8.00 KByte/s Active Apply Rate: 30.00 KByte/s Maximum Apply Rate: 715.00 KByte/s Real Time Query: OFF Instance(s): STDBY1 STDBY2 Properties: DGConnectIdentifier = 'stdby_tns' ObserverConnectIdentifier = '' FastStartFailoverTarget = '' PreferredObserverHosts = '' LogShipping = 'ON' RedoRoutes = '' LogXptMode = 'ASYNC' DelayMins = '0' Binding = 'OPTIONAL' MaxFailure = '0' ReopenSecs = '300' NetTimeout = '30' RedoCompression = 'DISABLE' PreferredApplyInstance = '' ApplyInstanceTimeout = '0' ApplyLagThreshold = '30' TransportLagThreshold = '30' TransportDisconnectedThreshold = '30' ApplyParallel = 'AUTO' ApplyInstances = '0' StandbyFileManagement = '' ArchiveLagTarget = '0' LogArchiveMaxProcesses = '0' LogArchiveMinSucceedDest = '0' DataGuardSyncLatency = '0' LogArchiveTrace = '0' LogArchiveFormat = '' DbFileNameConvert = '' LogFileNameConvert = '' ArchiveLocation = '' AlternateLocation = '' StandbyArchiveLocation = '' StandbyAlternateLocation = '' InconsistentProperties = '(monitor)' InconsistentLogXptProps = '(monitor)' LogXptStatus = '(monitor)' SendQEntries = '(monitor)' RecvQEntries = '(monitor)' HostName(*) StaticConnectIdentifier(*) TopWaitEvents(*) SidName(*) (*) - Please check specific instance for the property value Log file locations(*): (*) - Check specific instance for log file locations. Database Status: SUCCESS DGMGRL> exit -> From Standby [oracle@racnoden1 ~]$ dgmgrl DGMGRL for Linux: Release 19.0.0.0.0 - Production on Thu Feb 2 20:08:01 2023 Version 19.3.0.0.0 Copyright (c) 1982, 2019, Oracle and/or its affiliates. All rights reserved. Welcome to DGMGRL, type "help" for information. DGMGRL> connect sys/Oracle_4U@STDBY_TNS Connected to "STDBYDG" Connected as SYSDBA. DGMGRL> show configuration; Configuration - NTNT_PR Protection Mode: MaxPerformance Members: NTNT - Primary database STDBYDG - Physical standby database Fast-Start Failover: Disabled Configuration Status: SUCCESS (status updated 41 seconds ago) DGMGRL> show database verbose NTNT; Database - NTNT Role: PRIMARY Intended State: TRANSPORT-ON Instance(s): NTNT1 NTNT2 Properties: DGConnectIdentifier = 'ntnt_tns' ObserverConnectIdentifier = '' FastStartFailoverTarget = '' PreferredObserverHosts = '' LogShipping = 'ON' RedoRoutes = '' LogXptMode = 'ASYNC' DelayMins = '0' Binding = 'optional' MaxFailure = '0' ReopenSecs = '300' NetTimeout = '30' RedoCompression = 'DISABLE' PreferredApplyInstance = '' ApplyInstanceTimeout = '0' ApplyLagThreshold = '30' TransportLagThreshold = '30' TransportDisconnectedThreshold = '30' ApplyParallel = 'AUTO' ApplyInstances = '0' StandbyFileManagement = '' ArchiveLagTarget = '0' LogArchiveMaxProcesses = '0' LogArchiveMinSucceedDest = '0' DataGuardSyncLatency = '0' LogArchiveTrace = '0' LogArchiveFormat = '' DbFileNameConvert = '' LogFileNameConvert = '' ArchiveLocation = '' AlternateLocation = '' StandbyArchiveLocation = '' StandbyAlternateLocation = '' InconsistentProperties = '(monitor)' InconsistentLogXptProps = '(monitor)' LogXptStatus = '(monitor)' SendQEntries = '(monitor)' RecvQEntries = '(monitor)' HostName(*) StaticConnectIdentifier(*) TopWaitEvents(*) SidName(*) (*) - Please check specific instance for the property value Log file locations(*): (*) - Check specific instance for log file locations. Database Status: SUCCESS DGMGRL> show database verbose 'STDBYDG'; Database - STDBYDG Role: PHYSICAL STANDBY Intended State: APPLY-ON Transport Lag: 0 seconds (computed 1 second ago) Apply Lag: 0 seconds (computed 1 second ago) Average Apply Rate: 6.00 KByte/s Active Apply Rate: 16.00 KByte/s Maximum Apply Rate: 715.00 KByte/s Real Time Query: OFF Instance(s): STDBY1 STDBY2 Properties: DGConnectIdentifier = 'stdby_tns' ObserverConnectIdentifier = '' FastStartFailoverTarget = '' PreferredObserverHosts = '' LogShipping = 'ON' RedoRoutes = '' LogXptMode = 'ASYNC' DelayMins = '0' Binding = 'OPTIONAL' MaxFailure = '0' ReopenSecs = '300' NetTimeout = '30' RedoCompression = 'DISABLE' PreferredApplyInstance = '' ApplyInstanceTimeout = '0' ApplyLagThreshold = '30' TransportLagThreshold = '30' TransportDisconnectedThreshold = '30' ApplyParallel = 'AUTO' ApplyInstances = '0' StandbyFileManagement = '' ArchiveLagTarget = '0' LogArchiveMaxProcesses = '0' LogArchiveMinSucceedDest = '0' DataGuardSyncLatency = '0' LogArchiveTrace = '0' LogArchiveFormat = '' DbFileNameConvert = '' LogFileNameConvert = '' ArchiveLocation = '' AlternateLocation = '' StandbyArchiveLocation = '' StandbyAlternateLocation = '' InconsistentProperties = '(monitor)' InconsistentLogXptProps = '(monitor)' LogXptStatus = '(monitor)' SendQEntries = '(monitor)' RecvQEntries = '(monitor)' HostName(*) StaticConnectIdentifier(*) TopWaitEvents(*) SidName(*) (*) - Please check specific instance for the property value Log file locations(*): (*) - Check specific instance for log file locations. Database Status: SUCCESS DGMGRL> Hence our practice completes here and we setup DGMGRL on both side. -> Oracle Data Guard Broker and Static Service Registration (Doc ID 1387859.1)
© 2021 Ace2Oracle. All Rights Reserved | Developed By IBOX444