Fast-start failover(FSFO) help us to automatically fail over to a previously configured standby database while primary database is not available. Fast-start failover to standby. It is quick and reliable. FSFO does not require any manual steps to invoke the failover. Fast-start failover can be used only in a broker configuration. It can be configured only through DGMGRL.

Logged in to sys on dgmgrl prompt.
dgmgrl
connect sys

Verify and modify FSFO parameters.
show database verbose accdb LogXptMode
show database verbose accstdb LogXptMode
show database verbose accdb FastStartFailoverTarget
show database verbose accstdb FastStartFailoverTarget

Modify FSFO related parameters.
edit database accdb set property LogXptMode='SYNC';
edit database accstdb set property LogXptMode='SYNC';
edit database accdb set property FastStartFailoverTarget='accstdb';
edit database accstdb set property FastStartFailoverTarget='accdb';

Enable FSFO. If we encounter the error as above please proceed to verify the FSFO requirements.
- Flashback should be ON on both primary and standby database
- Protection mode should be Maxavailability

Verify flashback on primary.
select flashback_on from v$database;

Verify flashback on standby.
select flashback_on from v$database;

Enable flashback on primary.
alter database flashback on;
select flashback_on from v$database;

Enable flashback on stanbdy. We should cancel managed recovery before enabling flashback.
recover managed standby database cancel;
alter database flashback on;
recover managed standby database disconnect;
select flashback_on from v$database;

If we notice some inconsistent then disable and enable configuration will resolve the issue.
show configuration
disable configuration;
enable configuration;
show configuration;

Set protection mode to maxavailability.
edit configuration set protection mode as MaxAvailability;

Enable FSFO. We can see Warning that observer has not been started.
enable fast_start failover;

We have to start observer on different host but right now we have 2 hosts so lets start observer on standby database. The control will not be return back once observer has been started.
start observer;

Make primary database unavailable.
shutdown abort;

Now we can see database has been successfully failover to accstdb.

Lets start older primary database to mount mode.
startup mount;

Now we can see observer has been initiated older primary database(accdb) as standby database. This happends automatically. We do not need to do any thing manually.

Verify configuration.
show configuration;

Switch back to accdb. Lets make accdb as primary and accstdb as standby.
switchover to accdb;

Verify configuration and stop observer.
show configuration
stop observer;

We can notice observer has been stopped and we can get back control.
For details please visit Oracle documentation
https://docs.oracle.com/database/121/DGBKR/sofo.htm#DGBKR390
0 comments:
Post a Comment
Note: only a member of this blog may post a comment.