{"id":52011,"date":"2022-08-08T17:00:40","date_gmt":"2022-08-08T17:00:40","guid":{"rendered":"https:\/\/dbtut.com\/?p=52011"},"modified":"2022-08-08T17:07:11","modified_gmt":"2022-08-08T17:07:11","slug":"fast-start-failover-configuration","status":"publish","type":"post","link":"https:\/\/dbtut.com\/index.php\/2022\/08\/08\/fast-start-failover-configuration\/","title":{"rendered":"Fast-Start Failover Configuration"},"content":{"rendered":"<p>In today&#8217;s article, we will examine Fast-Start Failover Configuration.<\/p>\n<p>The configuration of Fast-Start Failover consists of the following 8 steps in summary.<\/p>\n<p>A. Identifying the Fast-start Failover Standby Database<\/p>\n<p>B. Setting Data Protection Mode<\/p>\n<p>C. Setting the threshold value at which Fast-start Failover will occur<\/p>\n<p>\u00c7. Setting additional Fast-start Failover features<\/p>\n<p>D. Setting the additional conditions we want to happen<\/p>\n<p>E. Activating Fast-start Failover<\/p>\n<p>F.Starting Observer<\/p>\n<p>G. Verifying the configuration<\/p>\n<p>Now let&#8217;s see how these operations are done.<\/p>\n<p>Commands run from DGMGRL will be run from Primary-1 unless specified separately.<\/p>\n<h4>A. Identifying the Fast-start Failover Standby Database<\/h4>\n<p>The first step of Fast-start Failover configuration is to determine the Target Standby Database.<\/p>\n<p>1. We query the current status of the Fast-start Failover configuration.<\/p>\n<pre class=\"lang:default decode:true \">DGMGRL&gt; show configuration\r\n\r\nConfiguration - Broker_Configuration\r\n\r\n  Protection Mode: MaxPerformance\r\n  Databases:\r\n    primary - Primary database\r\n    standby - Physical standby database\r\n    logical - Logical standby database\r\n\r\nFast-Start Failover: DISABLED\r\n\r\nConfiguration Status:\r\nSUCCESS\r\n<\/pre>\n<p>2. We question the Fast-start Failover configuration in detail.<\/p>\n<pre class=\"lang:default decode:true \">DGMGRL&gt; show fast_start failover\r\n\r\nFast-Start Failover: DISABLED\r\n\r\n  Threshold:          30 seconds\r\n  Target:             (none)\r\n  Observer:           (none)\r\n  Lag Limit:          30 seconds\r\n  Shutdown Primary:   TRUE\r\n  Auto-reinstate:     TRUE\r\n  Observer Reconnect: (none)\r\n  Observer Override:  FALSE\r\n\r\nConfigurable Failover Conditions\r\n  Health Conditions:\r\n    Corrupted Controlfile          YES\r\n    Corrupted Dictionary           YES\r\n    Inaccessible Logfile            NO\r\n    Stuck Archiver                  NO\r\n    Datafile Offline               YES\r\n\r\n  Oracle Error Conditions:\r\n    (none)\r\n<\/pre>\n<p>3. Fast-start Failover Target Standby Database is determined.<\/p>\n<pre class=\"lang:default decode:true \">\tDGMGRL&gt; edit database primary set property FastStartFailoverTarget=standby;\r\n\tProperty \"faststartfailovertarget\" updated\r\n<\/pre>\n<p>4. We query the Fast-start Failover configuration again.<\/p>\n<pre class=\"lang:default decode:true \">DGMGRL&gt; show fast_start failover\r\n\r\nFast-Start Failover: DISABLED\r\n\r\n  Threshold:          30 seconds\r\n  Target:             (none)\r\n  Observer:           (none)\r\n  Lag Limit:          30 seconds\r\n  Shutdown Primary:   TRUE\r\n  Auto-reinstate:     TRUE\r\n  Observer Reconnect: (none)\r\n  Observer Override:  FALSE\r\n\r\nConfigurable Failover Conditions\r\n  Health Conditions:\r\n    Corrupted Controlfile          YES\r\n    Corrupted Dictionary           YES\r\n    Inaccessible Logfile            NO\r\n    Stuck Archiver                  NO\r\n    Datafile Offline               YES\r\n\r\n  Oracle Error Conditions:\r\n    (none)\r\n<\/pre>\n<p>There is no change in the configuration. It is necessary to ENABLE Fast-start Failover for it to appear, or we can see it when queried as follows.<\/p>\n<pre class=\"lang:default decode:true \">DGMGRL&gt; show database primary FastStartFailoverTarget;\r\n  FastStartFailoverTarget = 'standby'\r\nDGMGRL&gt; show database standby FastStartFailoverTarget;\r\n  FastStartFailoverTarget = ''\r\n<\/pre>\n<h4>B. Setting Data Protection Mode<\/h4>\n<p>To enable Fast-start Failover, Data Protection mode must be in either Maximum Availability or Maximum Performance mode.<\/p>\n<p>It is important to choose the right protection mode, as it has a direct effect on data loss in the event of a disaster.<\/p>\n<p>If it is decided to use Maximum Performance mode, the FastStartFailoverLagLimit parameter must be set.<\/p>\n<p>This parameter determines that Fast-start Failover will be activated when the maximum number of seconds of lag occurs.<\/p>\n<p>1. We check the current Data Protection Mode.<\/p>\n<pre class=\"lang:default decode:true \">DGMGRL&gt; show configuration\r\n\r\nConfiguration - Broker_Configuration\r\n\r\n  Protection Mode: MaxPerformance\r\n  Databases:\r\n    primary - Primary database\r\n    standby - Physical standby database\r\n    logical - Logical standby database\r\n\r\nFast-Start Failover: DISABLED\r\n\r\nConfiguration Status:\r\nSUCCESS\r\n<\/pre>\n<p>2. We question Redo-Transport Mods.<\/p>\n<pre class=\"lang:default decode:true \">DGMGRL&gt; show database primary 'LogXptMode';\r\n  LogXptMode = 'ASYNC'\r\nDGMGRL&gt; show database standby 'LogXptMode';\r\n  LogXptMode = 'ASYNC'\r\nDGMGRL&gt; Show database logical 'LogXptMode';\r\n  LogXptMode = 'ASYNC'\r\n<\/pre>\n<p>3. If I want Redos to SYNC to Fast-start Failover Standby Database, I follow these steps.<\/p>\n<pre class=\"lang:default decode:true \">DGMGRL&gt; edit database primary set property 'LogXptMode'=SYNC;\r\nProperty \"LogXptMode\" updated\r\nDGMGRL&gt; edit database standby set property LogXptMode=SYNC;\r\nProperty \"logxptmode\" updated\r\nDGMGRL&gt; edit configuration set protection mode as MaxAvailability;\r\nSucceeded.\r\n<\/pre>\n<pre class=\"lang:default decode:true \">DGMGRL&gt; show configuration \r\n\r\nConfiguration - Broker_Configuration\r\n\r\n  Protection Mode: MaxAvailability\r\n  Databases:\r\n    primary - Primary database\r\n      Warning: ORA-16629: database reports a different protection level from the protection mode\r\n\r\n    standby - Physical standby database\r\n    logical - Logical standby database\r\n\r\nFast-Start Failover: DISABLED\r\n\r\nConfiguration Status:\r\nWARNING\r\n<\/pre>\n<p>The reason for this error is because I did not use the correct syntax when setting LogXptMode for Primary Database.<\/p>\n<p>The syntax is corrected and queried again.<\/p>\n<pre class=\"lang:default decode:true \">DGMGRL&gt; edit database primary set property LogXptMode=SYNC;\r\nProperty \"logxptmode\" updated\r\nDGMGRL&gt; show configuration\r\n\r\nConfiguration - Broker_Configuration\r\n\r\n  Protection Mode: MaxAvailability\r\n  Databases:\r\n    primary - Primary database\r\n    standby - Physical standby database\r\n    logical - Logical standby database\r\n\r\nFast-Start Failover: DISABLED\r\n\r\nConfiguration Status:\r\nSUCCESS\r\n<\/pre>\n<p>4. To see how to set the FastStartFailoverLagLimit parameter when Maximum Performance mode is used, I change the Protection Mode again and set the parameter.<\/p>\n<p>The default value of this parameter is 30 seconds.<\/p>\n<pre class=\"lang:default decode:true \">DGMGRL&gt; show configuration verbose\r\n\r\nConfiguration - Broker_Configuration\r\n\r\n  Protection Mode: MaxPerformance\r\n  Databases:\r\n    primary - Primary database\r\n    standby - Physical standby database\r\n    logical - Logical standby database\r\n\r\n  Properties:\r\n    FastStartFailoverThreshold      = '30'\r\n    OperationTimeout                = '30'\r\n    FastStartFailoverLagLimit       = '30'\r\n    CommunicationTimeout            = '180'\r\n    ObserverReconnect               = '0'\r\n    FastStartFailoverAutoReinstate  = 'TRUE'\r\n    FastStartFailoverPmyShutdown    = 'TRUE'\r\n    BystandersFollowRoleChange      = 'ALL'\r\n    ObserverOverride                = 'FALSE'\r\n    ExternalDestination1            = ''\r\n    ExternalDestination2            = ''\r\n    PrimaryLostWriteAction          = 'CONTINUE'\r\n\r\nFast-Start Failover: DISABLED\r\n\r\nConfiguration Status:\r\nSUCCESS\r\n<\/pre>\n<pre class=\"lang:default decode:true \">DGMGRL&gt; edit database primary set property LogXptMode=ASYNC;\r\nError: ORA-16802: downgrading redo transport mode from SYNC disallowed\r\n\r\nFailed.\r\n<\/pre>\n<p>The reason for this error is that the Protection Mode needs to be changed first.<\/p>\n<pre class=\"lang:default decode:true \">DGMGRL&gt; edit configuration set protection mode as MaxPerformance;\r\nSucceeded.\r\nDGMGRL&gt; edit database primary set property LogXptMode=ASYNC;\r\nProperty \"logxptmode\" updated\r\nDGMGRL&gt; edit database standby set property LogXptMode=ASYNC;\r\nProperty \"logxptmode\" updated\r\nDGMGRL&gt; edit database logical set property LogXptMode=ASYNC;\r\nProperty \"logxptmode\" updated\r\n<\/pre>\n<pre class=\"lang:default decode:true \">DGMGRL&gt; show configuration\r\n\r\nConfiguration - Broker_Configuration\r\n\r\n  Protection Mode: MaxPerformance\r\n  Databases:\r\n    primary - Primary database\r\n    standby - Physical standby database\r\n    logical - Logical standby database\r\n\r\nFast-Start Failover: DISABLED\r\n\r\nConfiguration Status:\r\nSUCCESS\r\n<\/pre>\n<pre class=\"lang:default decode:true \">DGMGRL&gt; show database primary LogXptMode;               \r\n  LogXptMode = 'async'\r\nDGMGRL&gt; show database standby LogXptMode;\r\n  LogXptMode = 'async'\r\nDGMGRL&gt; show database logical LogXptMode;\r\n  LogXptMode = 'async'\r\n<\/pre>\n<pre class=\"lang:default decode:true \">DGMGRL&gt; edit configuration set property FastStartFailoverLagLimit=900;\r\nProperty \"faststartfailoverlaglimit\" updated\r\nDGMGRL&gt; show configuration verbose\r\n\r\nConfiguration - Broker_Configuration\r\n\r\n  Protection Mode: MaxPerformance\r\n  Databases:\r\n    primary - Primary database\r\n    standby - Physical standby database\r\n    logical - Logical standby database\r\n\r\n  Properties:\r\n    FastStartFailoverThreshold      = '30'\r\n    OperationTimeout                = '30'\r\n    FastStartFailoverLagLimit       = '900'\r\n    CommunicationTimeout            = '180'\r\n    ObserverReconnect               = '0'\r\n    FastStartFailoverAutoReinstate  = 'TRUE'\r\n    FastStartFailoverPmyShutdown    = 'TRUE'\r\n    BystandersFollowRoleChange      = 'ALL'\r\n    ObserverOverride                = 'FALSE'\r\n    ExternalDestination1            = ''\r\n    ExternalDestination2            = ''\r\n    PrimaryLostWriteAction          = 'CONTINUE'\r\n\r\nFast-Start Failover: DISABLED\r\n\r\nConfiguration Status:\r\nSUCCESS\r\n<\/pre>\n<h4>C. Setting the threshold value at which Fast-start Failover will occur<\/h4>\n<p>Fast-start Failover Standby Database and how long the Observer does not receive a response from the Primary Database, determines how Fast-start Failover will be triggered.<\/p>\n<p>This is done with the FastStartFailoverThreshold parameter.<\/p>\n<p>This parameter must be set very accurately to prevent an unnecessary failover.<\/p>\n<p>For example, if our network connection is constantly interrupted for a few seconds, setting this parameter value low will do more harm than good.<\/p>\n<p>Oracle recommends the optimum values to set this parameter based on.<\/p>\n<p>For a system with a single instace Primary with almost no network latency: 10-15 seconds<\/p>\n<p>For a network latency system with a single instace Primary: 30-45 seconds<\/p>\n<p>For a build with RAC Primary: CSS Miss Count + Reconfiguration Time + 24-40 seconds.<\/p>\n<p>The CSS Miss Count is found as follows.<\/p>\n<pre class=\"lang:default decode:true \">[grid@primary1 ~]$ cd $GRID_HOME\r\n[grid@primary1 grid]$ crsctl get css misscount;\r\nCRS-4678: Successful get misscount 30 for Cluster Synchronization Services.<\/pre>\n<p>1. In the light of the information above, I set this value to 100 since I use RAC structure and CSS MissCount value is 30 seconds.<\/p>\n<pre class=\"lang:default decode:true \">DGMGRL&gt; show configuration verbose\r\n\r\nConfiguration - Broker_Configuration\r\n\r\n  Protection Mode: MaxPerformance\r\n  Databases:\r\n    primary - Primary database\r\n    standby - Physical standby database\r\n    logical - Logical standby database\r\n\r\n  Properties:\r\n    FastStartFailoverThreshold      = '30'\r\n    OperationTimeout                = '30'\r\n    FastStartFailoverLagLimit       = '900'\r\n    CommunicationTimeout            = '180'\r\n    ObserverReconnect               = '0'\r\n    FastStartFailoverAutoReinstate  = 'TRUE'\r\n    FastStartFailoverPmyShutdown    = 'TRUE'\r\n    BystandersFollowRoleChange      = 'ALL'\r\n    ObserverOverride                = 'FALSE'\r\n    ExternalDestination1            = ''\r\n    ExternalDestination2            = ''\r\n    PrimaryLostWriteAction          = 'CONTINUE'\r\n\r\nFast-Start Failover: DISABLED\r\n\r\nConfiguration Status:\r\nSUCCESS\r\n<\/pre>\n<pre class=\"lang:default decode:true \">DGMGRL&gt; edit configuration set property FastStartFailoverThreshold=100;\r\nProperty \"faststartfailoverthreshold\" updated\r\n<\/pre>\n<pre class=\"lang:default decode:true \">DGMGRL&gt; show configuration FastStartFailoverThreshold\r\n  FastStartFailoverThreshold = '100'\r\n<\/pre>\n<h4>\u00c7. Setting additional Fast-start Failover features<\/h4>\n<p>In order to use Fast-start Failover most accurately, I need to set many additional parameters.<\/p>\n<h5>a. FastStartFailoverLagLimit<\/h5>\n<p>We have given information in Protection mode, but there are some restrictions on the use of this parameter.<\/p>\n<p>A conscious use is essential as it is a parameter that directly affects data loss.<\/p>\n<p>Can be set while in Maximum Performance Mode.<\/p>\n<p>Maximum Availability is invalid in this mode because SYNC is already running.<\/p>\n<p>Real-Time Apply must be enabled on the standby side.<\/p>\n<p>The default value is 30 and the minimum value is 10.<\/p>\n<pre class=\"lang:default decode:true \">DGMGRL&gt; edit configuration set property FastStartFailoverLagLimit=900;\r\nProperty \"faststartfailoverlaglimit\" updated\r\nDGMGRL&gt; show configuration verbose\r\n\r\nConfiguration - Broker_Configuration\r\n\r\n  Protection Mode: MaxPerformance\r\n  Databases:\r\n    primary - Primary database\r\n    standby - Physical standby database\r\n    logical - Logical standby database\r\n\r\n  Properties:\r\n    FastStartFailoverThreshold      = '30'\r\n    OperationTimeout                = '30'\r\n    FastStartFailoverLagLimit       = '900'\r\n    CommunicationTimeout            = '180'\r\n    ObserverReconnect               = '0'\r\n    FastStartFailoverAutoReinstate  = 'TRUE'\r\n    FastStartFailoverPmyShutdown    = 'TRUE'\r\n    BystandersFollowRoleChange      = 'ALL'\r\n    ObserverOverride                = 'FALSE'\r\n    ExternalDestination1            = ''\r\n    ExternalDestination2            = ''\r\n    PrimaryLostWriteAction          = 'CONTINUE'\r\n\r\nFast-Start Failover: DISABLED\r\n\r\nConfiguration Status:\r\nSUCCESS\r\n<\/pre>\n<h5>b. FastStartFailoverPmyShutdown<\/h5>\n<p>It determines whether the Primary Database will be closed after the Failover that will occur by disconnecting the Primary Database from the Observer and Target Standby Database.<\/p>\n<p>The default value is TRUE, that is, it is turned off.<\/p>\n<p>TRUE: After the Failover that occurs after the FastStartFailoverThreshold value, the Primary Database is shut down with Shutdown Abort.<\/p>\n<p>FALSE: Primary Database is not turned off to see what is causing the failover.<\/p>\n<p>This information is visible from the V$FS_FAILOVER_STATS view.<\/p>\n<p>If I don&#8217;t want it shut down.<\/p>\n<pre class=\"lang:default decode:true \">DGMGRL&gt; edit configuration set property FastStartFailoverPmyShutdown=FALSE;\r\nProperty \"faststartfailoverpmyshutdown\" updated\r\nDGMGRL&gt; show configuration FastStartFailoverPmyShutdown \r\n  FastStartFailoverPmyShutdown = 'FALSE'\r\n<\/pre>\n<p>I set it back to TRUE because I want it to be turned off.<\/p>\n<pre class=\"lang:default decode:true \">DGMGRL&gt; edit configuration set property FastStartFailoverPmyShutdown=TRUE ;\r\nProperty \"faststartfailoverpmyshutdown\" updated\r\nDGMGRL&gt; show configuration FastStartFailoverPmyShutdown\r\n  FastStartFailoverPmyShutdown = 'TRUE'\r\n<\/pre>\n<p>In case of user configuration or an application with SYSDBA authorization calls Failover with the DBMS_DG.INITIATE_FS_FAILOVER function, the Primary Database is shutdown even if this parameter is set to FALSE.<\/p>\n<h5>c. FastStartFailoverAutoReinstate<\/h5>\n<p>It specifies whether the Primary Database, which will no longer work after failover, will be automatically made as a Physical Standby Database.<\/p>\n<p>We call this process REINSTATE. Its default value is TRUE. There are some prerequisites for this process.<\/p>\n<p>The FastStartFailoverAutoReinstate parameter is TRUE.<\/p>\n<p>Before failover and after the original Primary Database&#8217;s restart, the original and new primary databases must have the same Fast-start Failover configuration.<\/p>\n<p>The Observer that will perform the REINSTATE and the New Primary Database must be able to connect to the original Primary database.<\/p>\n<p>If automatic REINSTATE is not requested;<\/p>\n<pre class=\"lang:default decode:true \">DGMGRL&gt; edit configuration set property FastStartFailoverAutoReinstate=FALSE;\r\nProperty \"faststartfailoverautoreinstate\" updated\r\nDGMGRL&gt; show configuration FastStartFailoverAutoReinstate\r\n  FastStartFailoverAutoReinstate = 'FALSE'\r\n<\/pre>\n<p>I want automatic REINSTATE again I set the parameter to TRUE.<\/p>\n<pre class=\"lang:default decode:true \">DGMGRL&gt; edit configuration set property FastStartFailoverAutoReinstate=TRUE;\r\nProperty \"faststartfailoverautoreinstate\" updated\r\nDGMGRL&gt; show configuration FastStartFailoverAutoReinstate\r\n  FastStartFailoverAutoReinstate = 'TRUE'\r\n<\/pre>\n<h5>\u00e7. ObserverConnectIdentifier<\/h5>\n<p>It is the parameter that determines how the Observer will be connected to the Primary and Standby Database.<\/p>\n<p>By default, this value takes the &#8220;DGConnectIdentifier&#8221; parameter. If a different value is not used, there is no need to set it.<\/p>\n<p>We set it as follows.<\/p>\n<p>1. We query the current value of the parameter.<\/p>\n<pre class=\"lang:default decode:true \">DGMGRL&gt; show database primary ObserverConnectIdentifier\r\n  ObserverConnectIdentifier = ''\r\nDGMGRL&gt; show database standby ObserverConnectIdentifier\r\n  ObserverConnectIdentifier = ''\r\nDGMGRL&gt; show database logical ObserverConnectIdentifier\r\n  ObserverConnectIdentifier = ''<\/pre>\n<p>2. We set the parameter to its new value.<\/p>\n<pre class=\"lang:default decode:true \">DGMGRL&gt; edit database primary set property ObserverConnectIdentifier=PRIMARY;\r\nProperty \"observerconnectidentifier\" updated\r\nDGMGRL&gt; edit database logical set property ObserverConnectIdentifier=LOGICAL;\r\nProperty \"observerconnectidentifier\" updated\r\nDGMGRL&gt; edit database standby set property ObserverConnectIdentifier=STANDBY;\r\nProperty \"observerconnectidentifier\" updated\r\n<\/pre>\n<p>3. We check if the new value is set.<\/p>\n<pre class=\"lang:default decode:true \">DGMGRL&gt; show database primary ObserverConnectIdentifier\r\n  ObserverConnectIdentifier = 'primary'\r\nDGMGRL&gt; show database standby ObserverConnectIdentifier\r\n  ObserverConnectIdentifier = 'standby'\r\nDGMGRL&gt; show database logical ObserverConnectIdentifier\r\n  ObserverConnectIdentifier = 'logical'\r\n<\/pre>\n<p>4. We said that if the parameter was not set, we would use DGConnectIdentifier.<\/p>\n<p>The DGConnectIdentifier is queried to see its value.<\/p>\n<pre class=\"lang:default decode:true \">DGMGRL&gt; show database logical DGConnectIdentifier\r\n  DGConnectIdentifier = 'logical'\r\nDGMGRL&gt; show database primary DGConnectIdentifier\r\n  DGConnectIdentifier = 'primary'\r\nDGMGRL&gt; show database standby DGConnectIdentifier\r\n  DGConnectIdentifier = 'standby'<\/pre>\n<h5>d. ObserverOverride<\/h5>\n<p>Even if the Standby Database has communication with the Primary, it indicates whether the Failover operation will be performed in case the Observer&#8217;s communication with the Primary is lost. Default is FALSE.<\/p>\n<pre class=\"lang:default decode:true \">DGMGRL&gt; edit configuration set property ObserverOverride=FALSE;\r\nProperty \"observeroverride\" updated\r\nDGMGRL&gt; show configuration ObserverOverride\r\n  ObserverOverride = 'FALSE'\r\n<\/pre>\n<h5>e. ObserverReconnect<\/h5>\n<p>It determines how often the Observer will establish a connection with the Primary Database. Default value is 0.<\/p>\n<p>In other words, a connection will be established initially, and then there will be no request to establish a connection again.<\/p>\n<p>The advantage of this is that it does not burden the system with new connections, and the disadvantage is that it is not possible to understand whether the Primary will go or not without new connection requests.<\/p>\n<p>Oracle recommends that this value be set so that neither too often a connection load nor too rare a disconnection of communication is detected too late.<\/p>\n<pre class=\"lang:default decode:true \">DGMGRL&gt; edit configuration set property ObserverReconnect=15;\r\nProperty \"observerreconnect\" updated\r\nDGMGRL&gt; show configuration ObserverReconnect\r\n  ObserverReconnect = '15'\r\n<\/pre>\n<h4>D. Setting the additional conditions we want to happen<\/h4>\n<p>When the following conditions occur apart from the parameters, it may request the Failover to be triggered without waiting for the FastStartFailoverThreshold value.<\/p>\n<p>When Datafile goes offline,<\/p>\n<p>When Dictionary Corruption occurs in a critical database object,<\/p>\n<p>If the Control File is damaged due to a problem with the disk,<\/p>\n<p>In case LGWR process cannot write to Online Redo Logs,<\/p>\n<p>If the archive process cannot create an archive due to lack of space in the relevant path, FAST START FAILOVER operation takes place.<\/p>\n<p>When a specific ORA error is received\u2026<\/p>\n<p>1. What these features are can be seen as follows.<\/p>\n<pre class=\"lang:default decode:true \">DGMGRL&gt; show fast_start failover\r\n\r\nFast-Start Failover: DISABLED\r\n\r\n  Threshold:          100 seconds\r\n  Target:             (none)\r\n  Observer:           (none)\r\n  Lag Limit:          900 seconds\r\n  Shutdown Primary:   TRUE\r\n  Auto-reinstate:     TRUE\r\n  Observer Reconnect: 15 seconds\r\n  Observer Override:  FALSE\r\n\r\nConfigurable Failover Conditions\r\n  Health Conditions:\r\n    Corrupted Controlfile          YES\r\n    Corrupted Dictionary           YES\r\n    Inaccessible Logfile            NO\r\n    Stuck Archiver                  NO\r\n    Datafile Offline               YES\r\n\r\n  Oracle Error Conditions:\r\n    (none)\r\n<\/pre>\n<p>2. We can enable a condition that is NO in the default as follows.<\/p>\n<pre class=\"lang:default decode:true \">DGMGRL&gt; enable fast_start failover condition \"Inaccessible Logfile\";\r\nSucceeded.\r\nDGMGRL&gt; show fast_start failover\r\n\r\nFast-Start Failover: DISABLED\r\n\r\n  Threshold:          100 seconds\r\n  Target:             (none)\r\n  Observer:           (none)\r\n  Lag Limit:          900 seconds\r\n  Shutdown Primary:   TRUE\r\n  Auto-reinstate:     TRUE\r\n  Observer Reconnect: 15 seconds\r\n  Observer Override:  FALSE\r\n\r\nConfigurable Failover Conditions\r\n  Health Conditions:\r\n    Corrupted Controlfile          YES\r\n    Corrupted Dictionary           YES\r\n    Inaccessible Logfile           YES\r\n    Stuck Archiver                  NO\r\n    Datafile Offline               YES\r\n\r\n  Oracle Error Conditions:\r\n    (none)\r\n<\/pre>\n<p>3. We can enable specific ORA errors as follows.<\/p>\n<pre class=\"lang:default decode:true \">DGMGRL&gt; enable fast_start failover condition '1578';\r\nSucceeded.\r\nDGMGRL&gt; show fast_start failover;\r\n\r\nFast-Start Failover: DISABLED\r\n\r\n  Threshold:          100 seconds\r\n  Target:             (none)\r\n  Observer:           (none)\r\n  Lag Limit:          900 seconds\r\n  Shutdown Primary:   TRUE\r\n  Auto-reinstate:     TRUE\r\n  Observer Reconnect: 15 seconds\r\n  Observer Override:  FALSE\r\n\r\nConfigurable Failover Conditions\r\n  Health Conditions:\r\n    Corrupted Controlfile          YES\r\n    Corrupted Dictionary           YES\r\n    Inaccessible Logfile           YES\r\n    Stuck Archiver                  NO\r\n    Datafile Offline               YES\r\n\r\n  Oracle Error Conditions:\r\n    ORA-01578: ORACLE data block corrupted (file # %s, block # %s)\r\n<\/pre>\n<h4>E. Activating Fast-start Failover<\/h4>\n<p>I can now enable Fast-start Failover after I have made both parameter and all condition&#8217; settings.<\/p>\n<p>There is no Observer at this stage yet. Primary Database and Fast-start Failover Standby Database are communicating.<\/p>\n<p>We will get this warning when we enable Fast-start Failover anyway.<\/p>\n<p id=\"rXISvdq\"><img loading=\"lazy\" decoding=\"async\" width=\"628\" height=\"312\" class=\"size-full wp-image-52013 aligncenter\" src=\"https:\/\/dbtut.com\/wp-content\/uploads\/2022\/08\/img_62f13bcd97000.png\" alt=\"\" \/><\/p>\n<pre class=\"lang:default decode:true \">DGMGRL&gt; enable fast_start failover;\r\nEnabled.\r\nDGMGRL&gt; show configuration\r\n\r\nConfiguration - Broker_Configuration\r\n\r\n  Protection Mode: MaxPerformance\r\n  Databases:\r\n    primary - Primary database\r\n      Warning: ORA-16819: fast-start failover observer not started\r\n\r\n    standby - (*) Physical standby database\r\n      Warning: ORA-16819: fast-start failover observer not started\r\n\r\n    logical - Logical standby database\r\n\r\nFast-Start Failover: ENABLED\r\n\r\nConfiguration Status:\r\nWARNING\r\n<\/pre>\n<p>The information falling to the logs during activation is as follows.<\/p>\n[Primary-1]&#8212;&#8211;&gt;ALERT_LOG<\/p>\n<pre class=\"lang:default decode:true \">Fri Jan 27 13:33:54 2017\r\nFast-Start Failover (FSFO) has been enabled between:\r\n  Primary = \"primary\"\r\n  Standby = \"standby\"\r\nFri Jan 27 13:33:54 2017\r\nFSFP started with pid=27, OS id=21775 \r\n<\/pre>\n[Primary-2]&#8212;&#8211;&gt;ALERT_LOG<\/p>\n<pre class=\"lang:default decode:true \">Fri Jan 27 13:34:12 2017\r\nFSFP started with pid=49, OS id=31147 \r\n<\/pre>\n<p>The process is controlled by the operating system.<\/p>\n<pre class=\"lang:default decode:true \">[root@primary1 ~]# ps -ef |grep fsfp |grep -v grep\r\noracle   21775     1  0 13:33 ?        00:00:00 ora_fsfp_primary1\r\n<\/pre>\n<pre class=\"lang:default decode:true \">[root@primary2 ~]# ps -ef |grep fsfp |grep -v grep\r\noracle   31147     1  0 13:34 ?        00:00:00 ora_fsfp_primary2\r\n<\/pre>\n<h4>F.Starting Observer<\/h4>\n<p>Observer must first be run on a separate server, if available, or run on Fast-start Failover Standby Database.<\/p>\n<p>When the Observer is run, it tells the Broker to manage the monitoring job of the Data Guard Environment via DGMGRL.<\/p>\n<p>There is only 1 Observer in the Data Guard Environment.<\/p>\n<p>It does all the management with a small configuration file containing information and connection definitions of Observer, Primary and Standby Databases.<\/p>\n<p>Observer is a foreground process. Therefore, it keeps the command prompt busy all the time.<\/p>\n<p>Once stopped, something can be done at the command prompt again.<\/p>\n<p>Therefore, it should be at a point where it will work continuously.<\/p>\n<p>For example, on Terminal servers.<\/p>\n<p>1. The Observer is started.<\/p>\n<pre class=\"lang:default decode:true \">DGMGRL&gt; start observer;\r\nObserver Started.\r\n<\/pre>\n<p>2. We are querying the status of the configuration.<\/p>\n<pre class=\"lang:default decode:true \">DGMGRL&gt; show configuration\r\n\r\nConfiguration - Broker_Configuration\r\n\r\n  Protection Mode: MaxPerformance\r\n  Databases:\r\n    primary - Primary database\r\n    standby - (*) Physical standby database\r\n    logical - Logical standby database\r\n\r\nFast-Start Failover: ENABLED\r\n\r\nConfiguration Status:\r\nSUCCESS\r\n<\/pre>\n<p>3. The Terminal window where the Observer is started is closed with a cross and the status of the Configuration is questioned.<\/p>\n<pre class=\"lang:default decode:true \">DGMGRL&gt; show configuration\r\n\r\nConfiguration - Broker_Configuration\r\n\r\n  Protection Mode: MaxPerformance\r\n  Databases:\r\n    primary - Primary database\r\n    standby - (*) Physical standby database\r\n    logical - Logical standby database\r\n\r\nFast-Start Failover: ENABLED\r\n\r\nConfiguration Status:\r\nSUCCESS\r\n<\/pre>\n<p>Although the Observer was not running, it did not give an error warning in the configuration.<\/p>\n<p>The reason is that the ObserverReconnect parameter is set to 15 seconds.<\/p>\n<p>We wait for a while and question again.<\/p>\n<pre class=\"lang:default decode:true \">DGMGRL&gt; show configuration verbose\r\n\r\nConfiguration - Broker_Configuration\r\n\r\n  Protection Mode: MaxPerformance\r\n  Databases:\r\n    primary - Primary database\r\n      Error: ORA-16820: fast-start failover observer is no longer observing this database\r\n\r\n    standby - (*) Physical standby database\r\n      Error: ORA-16820: fast-start failover observer is no longer observing this database\r\n\r\n    logical - Logical standby database\r\n\r\n  (*) Fast-Start Failover target\r\n\r\n  Properties:\r\n    FastStartFailoverThreshold      = '100'\r\n    OperationTimeout                = '30'\r\n    FastStartFailoverLagLimit       = '900'\r\n    CommunicationTimeout            = '180'\r\n    ObserverReconnect               = '15'\r\n    FastStartFailoverAutoReinstate  = 'TRUE'\r\n    FastStartFailoverPmyShutdown    = 'TRUE'\r\n    BystandersFollowRoleChange      = 'ALL'\r\n    ObserverOverride                = 'FALSE'\r\n    ExternalDestination1            = ''\r\n    ExternalDestination2            = ''\r\n    PrimaryLostWriteAction          = 'CONTINUE'\r\n\r\nFast-Start Failover: ENABLED\r\n\r\n  Threshold:          100 seconds\r\n  Target:             standby\r\n  Observer:           standby1.tivibulab.local\r\n  Lag Limit:          900 seconds\r\n  Shutdown Primary:   TRUE\r\n  Auto-reinstate:     TRUE\r\n  Observer Reconnect: 15 seconds\r\n  Observer Override:  FALSE\r\n\r\nConfiguration Status:\r\nERROR\r\n<\/pre>\n<h4>G. Verifying the configuration<\/h4>\n<p>After all operations, it is checked whether there is an error in the configuration.<\/p>\n<p>There are 3 ways.<\/p>\n<p>1. The broker configuration is queried.<\/p>\n<pre class=\"lang:default decode:true \">DGMGRL&gt; show configuration verbose\r\n\r\nConfiguration - Broker_Configuration\r\n\r\n  Protection Mode: MaxPerformance\r\n  Databases:\r\n    primary - Primary database\r\n    standby - (*) Physical standby database\r\n    logical - Logical standby database\r\n\r\n  (*) Fast-Start Failover target\r\n\r\n  Properties:\r\n    FastStartFailoverThreshold      = '100'\r\n    OperationTimeout                = '30'\r\n    FastStartFailoverLagLimit       = '900'\r\n    CommunicationTimeout            = '180'\r\n    ObserverReconnect               = '15'\r\n    FastStartFailoverAutoReinstate  = 'TRUE'\r\n    FastStartFailoverPmyShutdown    = 'TRUE'\r\n    BystandersFollowRoleChange      = 'ALL'\r\n    ObserverOverride                = 'FALSE'\r\n    ExternalDestination1            = ''\r\n    ExternalDestination2            = ''\r\n    PrimaryLostWriteAction          = 'CONTINUE'\r\n\r\nFast-Start Failover: ENABLED\r\n\r\n  Threshold:          100 seconds\r\n  Target:             standby\r\n  Observer:           standby1.tivibulab.local\r\n  Lag Limit:          900 seconds\r\n  Shutdown Primary:   TRUE\r\n  Auto-reinstate:     TRUE\r\n  Observer Reconnect: 15 seconds\r\n  Observer Override:  FALSE\r\n\r\nConfiguration Status:\r\nSUCCESS\r\n<\/pre>\n<p>2. The Fast_start Failover configuration is queried.<\/p>\n<pre class=\"lang:default decode:true \">DGMGRL&gt; show fast_start failover\r\n\r\nFast-Start Failover: ENABLED\r\n\r\n  Threshold:          100 seconds\r\n  Target:             standby\r\n  Observer:           standby1.tivibulab.local\r\n  Lag Limit:          900 seconds\r\n  Shutdown Primary:   TRUE\r\n  Auto-reinstate:     TRUE\r\n  Observer Reconnect: 15 seconds\r\n  Observer Override:  FALSE\r\n\r\nConfigurable Failover Conditions\r\n  Health Conditions:\r\n    Corrupted Controlfile          YES\r\n    Corrupted Dictionary           YES\r\n    Inaccessible Logfile           YES\r\n    Stuck Archiver                  NO\r\n    Datafile Offline               YES\r\n\r\n  Oracle Error Conditions:\r\n    ORA-01578: ORACLE data block corrupted (file # %s, block # %s)\r\n<\/pre>\n<p>3. We query from the v$DATABASE view.<\/p>\n<pre class=\"lang:default decode:true \">[Primary-1] SQL&gt; set linesize 9000\r\n[Primary-1] SQL&gt; column FS_FAILOVER_OBSERVER_HOST format a24\r\n[Primary-1] SQL&gt; select FS_FAILOVER_STATUS, FS_FAILOVER_CURRENT_TARGET, FS_FAILOVER_THRESHOLD, FS_FAILOVER_OBSERVER_PRESENT, FS_FAILOVER_OBSERVER_HOST from v$database;\r\n\r\nFS_FAILOVER_STATUS     FS_FAILOVER_CURRENT_TARGET     FS_FAILOVER_THRESHOLD FS_FAILOVER_OBSERVER_PRESENT FS_FAILOVER_OBSERVER_HOST\r\n---------------------- ------------------------------ --------------------- ------- ------------------------\r\nTARGET UNDER LAG LIMIT standby                                          100 YES     standby1.tivibulab.local\r\n<\/pre>\n<p>The values and meanings of the FS_FAILOVER_STATUS column<\/p>\n<p id=\"HKvrdyl\"><img loading=\"lazy\" decoding=\"async\" width=\"1181\" height=\"481\" class=\"size-full wp-image-52016 aligncenter\" src=\"https:\/\/dbtut.com\/wp-content\/uploads\/2022\/08\/img_62f140851b6cc.png\" alt=\"\" \/><\/p>\n<p>&nbsp;<\/p>\n<div class=\"pvc_clear\"><\/div>\n<p id=\"pvc_stats_52011\" class=\"pvc_stats all  \" data-element-id=\"52011\" style=\"\"><i class=\"pvc-stats-icon medium\" aria-hidden=\"true\"><svg aria-hidden=\"true\" focusable=\"false\" data-prefix=\"far\" data-icon=\"chart-bar\" role=\"img\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 512 512\" class=\"svg-inline--fa fa-chart-bar fa-w-16 fa-2x\"><path fill=\"currentColor\" d=\"M396.8 352h22.4c6.4 0 12.8-6.4 12.8-12.8V108.8c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v230.4c0 6.4 6.4 12.8 12.8 12.8zm-192 0h22.4c6.4 0 12.8-6.4 12.8-12.8V140.8c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v198.4c0 6.4 6.4 12.8 12.8 12.8zm96 0h22.4c6.4 0 12.8-6.4 12.8-12.8V204.8c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v134.4c0 6.4 6.4 12.8 12.8 12.8zM496 400H48V80c0-8.84-7.16-16-16-16H16C7.16 64 0 71.16 0 80v336c0 17.67 14.33 32 32 32h464c8.84 0 16-7.16 16-16v-16c0-8.84-7.16-16-16-16zm-387.2-48h22.4c6.4 0 12.8-6.4 12.8-12.8v-70.4c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v70.4c0 6.4 6.4 12.8 12.8 12.8z\" class=\"\"><\/path><\/svg><\/i> <img loading=\"lazy\" decoding=\"async\" width=\"16\" height=\"16\" alt=\"Loading\" src=\"https:\/\/dbtut.com\/wp-content\/plugins\/page-views-count\/ajax-loader-2x.gif\" border=0 \/><\/p>\n<div class=\"pvc_clear\"><\/div>\n","protected":false},"excerpt":{"rendered":"<p>In today&#8217;s article, we will examine Fast-Start Failover Configuration. The configuration of Fast-Start Failover consists of the following 8 steps in summary. A. Identifying the Fast-start Failover Standby Database B. Setting Data Protection Mode C. Setting the threshold value at which Fast-start Failover will occur \u00c7. Setting additional Fast-start Failover features D. Setting the additional &hellip;<\/p>\n<div class=\"pvc_clear\"><\/div>\n<p id=\"pvc_stats_52011\" class=\"pvc_stats all  \" data-element-id=\"52011\" style=\"\"><i class=\"pvc-stats-icon medium\" aria-hidden=\"true\"><svg aria-hidden=\"true\" focusable=\"false\" data-prefix=\"far\" data-icon=\"chart-bar\" role=\"img\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 512 512\" class=\"svg-inline--fa fa-chart-bar fa-w-16 fa-2x\"><path fill=\"currentColor\" d=\"M396.8 352h22.4c6.4 0 12.8-6.4 12.8-12.8V108.8c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v230.4c0 6.4 6.4 12.8 12.8 12.8zm-192 0h22.4c6.4 0 12.8-6.4 12.8-12.8V140.8c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v198.4c0 6.4 6.4 12.8 12.8 12.8zm96 0h22.4c6.4 0 12.8-6.4 12.8-12.8V204.8c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v134.4c0 6.4 6.4 12.8 12.8 12.8zM496 400H48V80c0-8.84-7.16-16-16-16H16C7.16 64 0 71.16 0 80v336c0 17.67 14.33 32 32 32h464c8.84 0 16-7.16 16-16v-16c0-8.84-7.16-16-16-16zm-387.2-48h22.4c6.4 0 12.8-6.4 12.8-12.8v-70.4c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v70.4c0 6.4 6.4 12.8 12.8 12.8z\" class=\"\"><\/path><\/svg><\/i> <img loading=\"lazy\" decoding=\"async\" width=\"16\" height=\"16\" alt=\"Loading\" src=\"https:\/\/dbtut.com\/wp-content\/plugins\/page-views-count\/ajax-loader-2x.gif\" border=0 \/><\/p>\n<div class=\"pvc_clear\"><\/div>\n","protected":false},"author":484,"featured_media":52017,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"om_disable_all_campaigns":false,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"_uf_show_specific_survey":0,"_uf_disable_surveys":false,"footnotes":""},"categories":[4],"tags":[],"class_list":["post-52011","post","type-post","status-publish","format-standard","has-post-thumbnail","","category-oracle"],"aioseo_notices":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v24.9 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Fast-Start Failover Configuration - Database Tutorials<\/title>\n<meta name=\"description\" content=\"In today&#039;s article, we will examine Fast-Start Failover Configuration. The configuration of Fast-Start Failover consists of the following 8 steps in summary.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/dbtut.com\/index.php\/2022\/08\/08\/fast-start-failover-configuration\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Fast-Start Failover Configuration - Database Tutorials\" \/>\n<meta property=\"og:description\" content=\"In today&#039;s article, we will examine Fast-Start Failover Configuration. The configuration of Fast-Start Failover consists of the following 8 steps in summary.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/dbtut.com\/index.php\/2022\/08\/08\/fast-start-failover-configuration\/\" \/>\n<meta property=\"og:site_name\" content=\"Database Tutorials\" \/>\n<meta property=\"article:published_time\" content=\"2022-08-08T17:00:40+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2022-08-08T17:07:11+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/dbtut.com\/wp-content\/uploads\/2022\/08\/Ekran-goruntusu-2022-08-08-195911.png\" \/>\n\t<meta property=\"og:image:width\" content=\"795\" \/>\n\t<meta property=\"og:image:height\" content=\"351\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Onur ARDAHANLI\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Onur ARDAHANLI\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"15 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/dbtut.com\/index.php\/2022\/08\/08\/fast-start-failover-configuration\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/dbtut.com\/index.php\/2022\/08\/08\/fast-start-failover-configuration\/\"},\"author\":{\"name\":\"Onur ARDAHANLI\",\"@id\":\"https:\/\/dbtut.com\/#\/schema\/person\/7fcd466cd0d347ec64aaa48f18f780c6\"},\"headline\":\"Fast-Start Failover Configuration\",\"datePublished\":\"2022-08-08T17:00:40+00:00\",\"dateModified\":\"2022-08-08T17:07:11+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/dbtut.com\/index.php\/2022\/08\/08\/fast-start-failover-configuration\/\"},\"wordCount\":1518,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/dbtut.com\/#organization\"},\"image\":{\"@id\":\"https:\/\/dbtut.com\/index.php\/2022\/08\/08\/fast-start-failover-configuration\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/dbtut.com\/wp-content\/uploads\/2022\/08\/Ekran-goruntusu-2022-08-08-195911.png\",\"articleSection\":[\"ORACLE\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/dbtut.com\/index.php\/2022\/08\/08\/fast-start-failover-configuration\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/dbtut.com\/index.php\/2022\/08\/08\/fast-start-failover-configuration\/\",\"url\":\"https:\/\/dbtut.com\/index.php\/2022\/08\/08\/fast-start-failover-configuration\/\",\"name\":\"Fast-Start Failover Configuration - Database Tutorials\",\"isPartOf\":{\"@id\":\"https:\/\/dbtut.com\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/dbtut.com\/index.php\/2022\/08\/08\/fast-start-failover-configuration\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/dbtut.com\/index.php\/2022\/08\/08\/fast-start-failover-configuration\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/dbtut.com\/wp-content\/uploads\/2022\/08\/Ekran-goruntusu-2022-08-08-195911.png\",\"datePublished\":\"2022-08-08T17:00:40+00:00\",\"dateModified\":\"2022-08-08T17:07:11+00:00\",\"description\":\"In today's article, we will examine Fast-Start Failover Configuration. The configuration of Fast-Start Failover consists of the following 8 steps in summary.\",\"breadcrumb\":{\"@id\":\"https:\/\/dbtut.com\/index.php\/2022\/08\/08\/fast-start-failover-configuration\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/dbtut.com\/index.php\/2022\/08\/08\/fast-start-failover-configuration\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/dbtut.com\/index.php\/2022\/08\/08\/fast-start-failover-configuration\/#primaryimage\",\"url\":\"https:\/\/dbtut.com\/wp-content\/uploads\/2022\/08\/Ekran-goruntusu-2022-08-08-195911.png\",\"contentUrl\":\"https:\/\/dbtut.com\/wp-content\/uploads\/2022\/08\/Ekran-goruntusu-2022-08-08-195911.png\",\"width\":795,\"height\":351},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/dbtut.com\/index.php\/2022\/08\/08\/fast-start-failover-configuration\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/dbtut.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Fast-Start Failover Configuration\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/dbtut.com\/#website\",\"url\":\"https:\/\/dbtut.com\/\",\"name\":\"Database Tutorials\",\"description\":\"MSSQL, Oracle, PostgreSQL, MySQL, MariaDB, DB2, Sybase, Teradata, Big Data, NOSQL, MongoDB, Couchbase, Cassandra, Windows, Linux\",\"publisher\":{\"@id\":\"https:\/\/dbtut.com\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/dbtut.com\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/dbtut.com\/#organization\",\"name\":\"dbtut\",\"url\":\"https:\/\/dbtut.com\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/dbtut.com\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/dbtut.com\/wp-content\/uploads\/2021\/02\/dbtutlogo.jpg\",\"contentUrl\":\"https:\/\/dbtut.com\/wp-content\/uploads\/2021\/02\/dbtutlogo.jpg\",\"width\":223,\"height\":36,\"caption\":\"dbtut\"},\"image\":{\"@id\":\"https:\/\/dbtut.com\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/dbtut.com\/#\/schema\/person\/7fcd466cd0d347ec64aaa48f18f780c6\",\"name\":\"Onur ARDAHANLI\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/dbtut.com\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/ecd20c3e1374ced4e1aefc82101cce4cd437be8fd957d1be3d106668b8a1b990?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/ecd20c3e1374ced4e1aefc82101cce4cd437be8fd957d1be3d106668b8a1b990?s=96&d=mm&r=g\",\"caption\":\"Onur ARDAHANLI\"},\"url\":\"https:\/\/dbtut.com\/index.php\/author\/onurardahanli\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Fast-Start Failover Configuration - Database Tutorials","description":"In today's article, we will examine Fast-Start Failover Configuration. The configuration of Fast-Start Failover consists of the following 8 steps in summary.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/dbtut.com\/index.php\/2022\/08\/08\/fast-start-failover-configuration\/","og_locale":"en_US","og_type":"article","og_title":"Fast-Start Failover Configuration - Database Tutorials","og_description":"In today's article, we will examine Fast-Start Failover Configuration. The configuration of Fast-Start Failover consists of the following 8 steps in summary.","og_url":"https:\/\/dbtut.com\/index.php\/2022\/08\/08\/fast-start-failover-configuration\/","og_site_name":"Database Tutorials","article_published_time":"2022-08-08T17:00:40+00:00","article_modified_time":"2022-08-08T17:07:11+00:00","og_image":[{"width":795,"height":351,"url":"https:\/\/dbtut.com\/wp-content\/uploads\/2022\/08\/Ekran-goruntusu-2022-08-08-195911.png","type":"image\/png"}],"author":"Onur ARDAHANLI","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Onur ARDAHANLI","Est. reading time":"15 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/dbtut.com\/index.php\/2022\/08\/08\/fast-start-failover-configuration\/#article","isPartOf":{"@id":"https:\/\/dbtut.com\/index.php\/2022\/08\/08\/fast-start-failover-configuration\/"},"author":{"name":"Onur ARDAHANLI","@id":"https:\/\/dbtut.com\/#\/schema\/person\/7fcd466cd0d347ec64aaa48f18f780c6"},"headline":"Fast-Start Failover Configuration","datePublished":"2022-08-08T17:00:40+00:00","dateModified":"2022-08-08T17:07:11+00:00","mainEntityOfPage":{"@id":"https:\/\/dbtut.com\/index.php\/2022\/08\/08\/fast-start-failover-configuration\/"},"wordCount":1518,"commentCount":0,"publisher":{"@id":"https:\/\/dbtut.com\/#organization"},"image":{"@id":"https:\/\/dbtut.com\/index.php\/2022\/08\/08\/fast-start-failover-configuration\/#primaryimage"},"thumbnailUrl":"https:\/\/dbtut.com\/wp-content\/uploads\/2022\/08\/Ekran-goruntusu-2022-08-08-195911.png","articleSection":["ORACLE"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/dbtut.com\/index.php\/2022\/08\/08\/fast-start-failover-configuration\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/dbtut.com\/index.php\/2022\/08\/08\/fast-start-failover-configuration\/","url":"https:\/\/dbtut.com\/index.php\/2022\/08\/08\/fast-start-failover-configuration\/","name":"Fast-Start Failover Configuration - Database Tutorials","isPartOf":{"@id":"https:\/\/dbtut.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/dbtut.com\/index.php\/2022\/08\/08\/fast-start-failover-configuration\/#primaryimage"},"image":{"@id":"https:\/\/dbtut.com\/index.php\/2022\/08\/08\/fast-start-failover-configuration\/#primaryimage"},"thumbnailUrl":"https:\/\/dbtut.com\/wp-content\/uploads\/2022\/08\/Ekran-goruntusu-2022-08-08-195911.png","datePublished":"2022-08-08T17:00:40+00:00","dateModified":"2022-08-08T17:07:11+00:00","description":"In today's article, we will examine Fast-Start Failover Configuration. The configuration of Fast-Start Failover consists of the following 8 steps in summary.","breadcrumb":{"@id":"https:\/\/dbtut.com\/index.php\/2022\/08\/08\/fast-start-failover-configuration\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/dbtut.com\/index.php\/2022\/08\/08\/fast-start-failover-configuration\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/dbtut.com\/index.php\/2022\/08\/08\/fast-start-failover-configuration\/#primaryimage","url":"https:\/\/dbtut.com\/wp-content\/uploads\/2022\/08\/Ekran-goruntusu-2022-08-08-195911.png","contentUrl":"https:\/\/dbtut.com\/wp-content\/uploads\/2022\/08\/Ekran-goruntusu-2022-08-08-195911.png","width":795,"height":351},{"@type":"BreadcrumbList","@id":"https:\/\/dbtut.com\/index.php\/2022\/08\/08\/fast-start-failover-configuration\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/dbtut.com\/"},{"@type":"ListItem","position":2,"name":"Fast-Start Failover Configuration"}]},{"@type":"WebSite","@id":"https:\/\/dbtut.com\/#website","url":"https:\/\/dbtut.com\/","name":"Database Tutorials","description":"MSSQL, Oracle, PostgreSQL, MySQL, MariaDB, DB2, Sybase, Teradata, Big Data, NOSQL, MongoDB, Couchbase, Cassandra, Windows, Linux","publisher":{"@id":"https:\/\/dbtut.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/dbtut.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/dbtut.com\/#organization","name":"dbtut","url":"https:\/\/dbtut.com\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/dbtut.com\/#\/schema\/logo\/image\/","url":"https:\/\/dbtut.com\/wp-content\/uploads\/2021\/02\/dbtutlogo.jpg","contentUrl":"https:\/\/dbtut.com\/wp-content\/uploads\/2021\/02\/dbtutlogo.jpg","width":223,"height":36,"caption":"dbtut"},"image":{"@id":"https:\/\/dbtut.com\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/dbtut.com\/#\/schema\/person\/7fcd466cd0d347ec64aaa48f18f780c6","name":"Onur ARDAHANLI","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/dbtut.com\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/ecd20c3e1374ced4e1aefc82101cce4cd437be8fd957d1be3d106668b8a1b990?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/ecd20c3e1374ced4e1aefc82101cce4cd437be8fd957d1be3d106668b8a1b990?s=96&d=mm&r=g","caption":"Onur ARDAHANLI"},"url":"https:\/\/dbtut.com\/index.php\/author\/onurardahanli\/"}]}},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/dbtut.com\/index.php\/wp-json\/wp\/v2\/posts\/52011","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/dbtut.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/dbtut.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/dbtut.com\/index.php\/wp-json\/wp\/v2\/users\/484"}],"replies":[{"embeddable":true,"href":"https:\/\/dbtut.com\/index.php\/wp-json\/wp\/v2\/comments?post=52011"}],"version-history":[{"count":0,"href":"https:\/\/dbtut.com\/index.php\/wp-json\/wp\/v2\/posts\/52011\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/dbtut.com\/index.php\/wp-json\/wp\/v2\/media\/52017"}],"wp:attachment":[{"href":"https:\/\/dbtut.com\/index.php\/wp-json\/wp\/v2\/media?parent=52011"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/dbtut.com\/index.php\/wp-json\/wp\/v2\/categories?post=52011"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/dbtut.com\/index.php\/wp-json\/wp\/v2\/tags?post=52011"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}