Search This Blog

Compare features in different High Availability options in SQL Server.

  • Failover Clustering
  • Database Mirroring
  • Replication
  • Log Shipping
Though, Failover clustering still is the most popular option, my guess is the other options might make it a more level field going forward.
In the following matrix, I compare some features of each HA option in one table. This gives a good comparison picture of the features available in each option.
Property \ FeatureFailoverClusteringDB MirroringReplicationLog Shipping
Server LevelYesNoNoNo
Database LevelNoYesYesYes
Automatic FailoverYesYes (Only HA Option)NoNo
Automatic Failure DetectionYesYes (Only in HA option)NoNo
Hot, Warm or Cold standbyHotHot and Warm OptionsWarmWarm
Server Level Objects FailoverYes (Automatic)ManualManualManual
Is data on Failover available for queries while the Primary server is running?NoYes (use Database Snapshots)YesYes (Standby Mode)
Are changes allowed at Failover location?NoNoYes (Merge and TRN Replication with updating subscribers)No
Is Main and Failover server in a 1-1 relationship?YesYesNot RequiredNot Required
Is 1-Many relationship possible between the Main and Failover servers?NoNoYesYes
Is Many-1 relationship possible between Main and Failover server?NoNoYesNo
Is Automatic Application redirection possible after failover?YesYesNoNo
Recovery model required for the participating databases?AnyFULLANYFULL & BULK
Can you filter what data is sent to the Failover server?NoNoYesNo
Where does the logic HA reside?OS + SqlSqlReplication Agents (they run outside Sql ServerSql Agents (Run outside Sql Server)
If you want a reports server, what is the best solution?Not PossibleWorks, but needs constant refresh of the Snapshot database for latest data.Best Option.Works, but users connections need to be kicked out, when new log is applied.
Best solution if the Main and Failover server are separated by long distance?Not good.Works, but not recommended.Works, but with high latencyBest Option. (Log compression reduces latency significantly.