Here I am simulating scenario for fast-start failover.
Step 1: View fast_start failover is enabled or not.
DGMGRL> show configuration; Configuration - drdb Protection Mode: MaxAvailability Databases: testdb - Primary database std_testdb - (*) Physical standby database Fast-Start Failover: ENABLED Configuration Status: SUCCESS
Step 2: I am aborting the Simulating and Restriction After enabling FAST_START failoverdatabase.
SQL> shut abort ORACLE instance shut down. SQL> exit
Step 3: Check observer
DGMGRL> start observer Observer started16:22:49.59 Saturday, June 23, 2018 Initiating Fast-Start Failover to database "std_testdb"... Performing failover NOW, please wait... Failover succeeded, new primary is "std_testdb" 16:23:02.29 Saturday, June 23, 2018
Step 4: Now again I am starting a primary database.
[oracle@test1 ~]$ sqlplus / as sysdba SQL*Plus: Release 11.2.0.4.0 Production on Sat Jun 23 16:23:21 2018 Copyright (c) 1982, 2013, Oracle. All rights reserved. Connected to an idle instance. SQL> startup ORACLE instance started. Total System Global Area 663908352 bytes Fixed Size 2256192 bytes Variable Size 578814656 bytes Database Buffers 79691776 bytes Redo Buffers 3145728 bytes Database mounted. ORA-16649: possible failover to another database prevents this database from being opened
Step 5: check observer status
16:23:47.75 Saturday, June 23, 2018 Initiating reinstatement for database "testdb"... Reinstating database "testdb", please wait... Operation requires shutdown of instance "testdb" on database "testdb" Shutting down instance "testdb"... Unable to connect to database ORA-12514: TNS:listener does not currently know of service requested in connect descriptor Failed. Warning: You are no longer connected to ORACLE. Please complete the following steps and reissue the REINSTATE command: shut down instance "testdb" of database "testdb" start up and mount instance "testdb" of database "testdb" 16:24:06.47 Saturday, June 23, 2018
Step 6: Check alert log file
Data Guard: verifying database primary role... Starting Data Guard Broker (DMON) Sat Jun 23 16:23:34 2018 INSV started with pid=24, OS id=18836 Sat Jun 23 16:23:38 2018 NSV1 started with pid=25, OS id=18838 Sat Jun 23 16:23:44 2018 Data Guard: version check completed Data Guard determines a failover has occurred - this is no longer a primary database ORA-16649 signalled during: ALTER DATABASE OPEN... Sat Jun 23 16:23:48 2018 NSV1 started with pid=25, OS id=18843 Sat Jun 23 16:23:53 2018 RSM0 started with pid=26, OS id=18847 Sat Jun 23 16:23:56 2018 Using STANDBY_ARCHIVE_DEST parameter default value as /u01/arc/testdb/stdby/ RFS[1]: Assigned to RFS process 18849 RFS[1]: Database mount ID mismatch [0xa4af374e:0xa4af137e] (2762946382:2762937214) RFS[1]: Not using real application clusters FLASHBACK DATABASE TO SCN 2060134 Flashback Restore Start Flashback Restore Complete Flashback Media Recovery Start Serial Media Recovery started Recovery of Online Redo Log: Thread 1 Group 2 Seq 54 Reading mem 0 Mem# 0: /u01/oracle/oradata/testdb/redo02.log Recovery of Online Redo Log: Thread 1 Group 3 Seq 55 Reading mem 0 Mem# 0: /u01/oracle/oradata/testdb/redo03.log Incomplete Recovery applied until change 2060135 time 06/23/2018 16:21:58 Flashback Media Recovery Complete Completed: FLASHBACK DATABASE TO SCN 2060134 alter database convert to physical standby ALTER DATABASE CONVERT TO PHYSICAL STANDBY (testdb) Flush standby redo logfile failed:1649
Step 7: check the newly converted primary database.
SQL> select name,open_mode,database_role,db_unique_name from v$database; NAME OPEN_MODE DATABASE_ROLE DB_UNIQUE_NAME --------- -------------------- ---------------- ------------------------------ TESTDB READ WRITE PRIMARY STD_TESTDB
Step 8: Open a standby database.
SQL> select name,open_mode ,database_role from v$database; NAME OPEN_MODE DATABASE_ROLE --------- -------------------- ---------------- TESTDB MOUNTED PHYSICAL STANDBY SQL> alter database open; Database altered.
Step 9: Check status
SQL> select name,open_mode,database_role,db_unique_name from v$database; NAME OPEN_MODE DATABASE_ROLE DB_UNIQUE_NAME --------- -------------------- ---------------- ------------------------------ TESTDB READ ONLY PHYSICAL STANDBY testdb
Step 10: check the reason for failover
SQL> select * from v$fs_failover_stats; LAST_FAILOVER_TIME LAST_FAILOVER_REASON --------------------- ----------------------------------------------------------- 06/23/2018 16:22:54 Primary Disconnected
- We can not change Protection Mode once Fast_Start failover is enabled.
- We cannot change the LogXptMode property for Primary or Standby database.
- We can not perform failover o4xfrjb7r switchover to standby database that not target database for fast-start failover.
- We can not disable or delete data guard broker configuration, trying to do so will result in the following error :
Error: ORA-16654: fast-start failover is enabled
5. We can not disable or remover standby database that is a target or fast_start failover.
Stay tuned for More articles on Oracle DataGuard
Thank you for giving your valuable time to read the above information.
If you want to be updated with all our articles send us the Invitation or Follow us:
Telegram Channel: https://t.me/helporacle
Skant Gupta’s LinkedIn: www.linkedin.com/in/skantali/
Joel Perez’s LinkedIn: Joel Perez’s Profile
LinkedIn Group: Oracle Cloud DBAAS
Facebook Page: OracleHelp