Initiate the switchover on the primary database, BOSTON, by issuing the following SQL statementOn the data guard broker documentation it doesn't explicitly states where to initiate the switchover. In practice switchover command could be initiated while logged into any instance. However, executing switchover on the primary instance when data gaurd broker is used will output the following in the data guard broker log. The DG configuration is
DGMGRL> show configuration Configuration - test_dg Protection Mode: MaxAvailability Members: dgtest - Primary database dgtest2 - Physical standby database dgtest3 - Physical standby database Fast-Start Failover: Disabled Configuration Status: SUCCESS (status updated 9 seconds ago)Switchover command is issued while connected to the current primary, dgtest.
2022-03-21T10:41:33.122+00:00 Forwarding MON_PROPERTY operation to member dgtest2 for processing 2022-03-21T10:41:42.319+00:00 Initiating a healthcheck... SWITCHOVER TO dgtest2 Switchover to physical standby database cannot be initiated from the primary database redirecting connection to switchover target database dgtest2... ...using connect identifier: dgtest2tns SWITCHOVER TO dgtest2 Notifying Oracle Clusterware to prepare primary database for switchover 2022-03-21T10:41:44.319+00:00 Executing SQL: [ALTER DATABASE SWITCHOVER TO 'dgtest2'] 2022-03-21T10:42:02.573+00:00 SQL [ALTER DATABASE SWITCHOVER TO 'dgtest2'] executed successfully 2022-03-21T10:42:03.652+00:00 Switchover successfulFrom the output it seems that DG broker is creating a remote connection to the standby (new primary) using the TNS entry used when the standby was added to the data guard broker.
On the otherhand if connected to the standby and switchover command is issued no such message appears.
DGMGRL> show configuration Configuration - test_dg Protection Mode: MaxAvailability Members: dgtest2 - Primary database dgtest - Physical standby database dgtest3 - Physical standby database Fast-Start Failover: Disabled Configuration Status: SUCCESS (status updated 5 seconds ago)New primary is dgtest2 and switchover command is issued from standby, dgtest. The output on DG broker log of the primary (dgtest2) shows the below
2022-03-21T10:50:27.266+00:00 Initiating a healthcheck... SWITCHOVER TO dgtest 2022-03-21T10:50:28.682+00:00 Notifying Oracle Clusterware to prepare primary database for switchover Executing SQL: [ALTER DATABASE SWITCHOVER TO 'dgtest'] 2022-03-21T10:50:49.451+00:00 SQL [ALTER DATABASE SWITCHOVER TO 'dgtest'] executed successfullySimilary if the switchvoer is issued from another standby that is not the future primary (in this confiugration dgtest3) then again the primary's DG broker log output will have the below output
2022-03-21T11:31:51.242+00:00 Initiating a healthcheck... SWITCHOVER TO dgtest2 2022-03-21T11:31:52.601+00:00 Notifying Oracle Clusterware to prepare primary database for switchover Executing SQL: [ALTER DATABASE SWITCHOVER TO 'dgtest2']