OTN Appreciation Day: Oracle Data Guard Fast-Start Failover
Thank you, Tim, for the great idea.
There are so many cool database features one could spend weeks blogging about them.
A feature which I like very much is Oracle DataGuard Fast-Start Failover, FSFO for short.
Oracle DataGuard Fast-Start Failover was one of the many new features introduced in Oracle Database 10.2. It's an addition to the already available DataGuard option to maintain standby databases. DataGuard FSFO is a feature that automatically, quickly, and reliably fails over to a designated, synchronized standby database in the event of loss of the production database, without requiring manual intervention.
In FSFO configuration there are three participants - primary database, standby database and an observer and they follow a very simple rule - whichever two can communicate with each other will determine the outcome of fast-start failover. The observer usually runs on a third machine, requires only Oracle client and will continuously monitor the primary and standby databases for possible failure conditions.
FSFO solves the problem we used to have with clusters before - a "split brain" scenario where after a failure of the connection between the cluster nodes we end up having two primary databases. FSFO also gives you the option to establish an acceptable time limit (in seconds) that the designated standby is allowed to fall behind the primary database (in terms of redo applied), beyond which time a fast-start failover will not be allowed.
Oracle DataGuard Fast-Start Failover can be used only in a broker configuration in either maximum availability mode or maximum performance mode.
I don't have post on FSFO (yet) but here are the links to the documentation:
Oracle Database 12.1 Data Guard Concepts and Administration