When thinking of high availability in SQL Server, there are two choices that come to mind: Database Mirroring and Failover Clustering.
Choosing the right high availability solution will come down to cost, complexity of implementation, and scope of availability. Both Database Mirroring and Failover Clustering accomplish a similar goal in very different ways. The details covered in this post are based on a two node failover cluster for SQL Cluster Hosting and high-safety mode with automatic failover for Database Mirroring.
The additional expense that goes along with Clustering is associated to the need of a shared storage device, an enterprise edition Windows Server. Implementation is more complex than Database Mirroring and has additional requirements which add to the complexity such as the need for an Active Directory domain and multiple networks. Since Clustering works at the server level, a failover will apply to the SQL Server Service and the configured Disk resources which contain all of your databases and logs.
With Failover Clustering there is a service that runs on both nodes and monitors each one to see where the SQL Server service is currently running. If the SQL Server service isn’t running on any nodes, then the cluster service starts the SQL Server service on one of them and makes the clustered disk resources available to that node. SQL Clustering provides a simple integration into your application environment. A virtual IP is assigned to the cluster so you only have to change the IP that your application uses to access the databases. Unlike database mirroring, applications will not need to be aware that a cluster is in place in the event of a failover. Since failover clustering operates at the server level, SQL users, settings, and other items which are not held in the database will be reflected on both nodes.
In my next post, we’ll continue with Part II of this discussion and cover database mirroring in more detail.



Share this article:














Could you recommend any specific resources, books, or other blogs on this topic?
Hi Ethel,
I would recommend that you look at the following technical material provided by Microsoft. This material will provide an in depth understanding of how each of these technologies works. Enjoy.
Database Mirroring
http://technet.microsoft.com/en-us/library/cc917680.aspx
SQL Server Clustering
http://www.microsoft.com/downloads/details.aspx?familyid=818234dc-a17b-4f09-b282-c6830fead499&displaylang=en