Here I am simulating scenario for fast-start failover.

Configuring Fast-Start Fail Over

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
Restrictions after Enabling FAST_START failover :
We have seen an overview of Fast_start failover in the previous article. In this article, we will see restrictions or we can say operations that are prohibited in data guard environment after enabling FAST_START failover.
  1. We can not change Protection Mode once Fast_Start failover is enabled.
  2. We cannot change the LogXptMode property for Primary or Standby database.
  3. We can not perform failover o4xfrjb7r switchover to standby database that not target database for fast-start failover.
  4. 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.

6. We can not change FastStartFailoverTarget property once fast_start failover is enabled.
7. Failover to an unsynchronized fast-start failover target is prohibited.

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

About The Author

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.