Data Management

High Availability with SQL Server and Double-Take

I have been doing a lot of work with SQL Server and Disaster Recovery. Many of my clients are particularly fond of Double-Take. In this three part blog series, I will go over the fundamentals of configuring Double-Take.

Note: All screen shots are located a the bottom of the blog; simply hover your mouse over the screen shot to see what Figure it is. -Steven S. Warren

In the age of catastrophes, which include disk failures, power failures, fires and floods, disasters can take their toll on any business and stop the flow of information. With each minute of lost data translating into unrecoverable revenues, downtime is being taken seriously. As a DBA today in the IT field, we are in an age of zero downtime if possible. To make this dream come true, NSI's Double-Take software provides high availability for Windows 2000/2003/2008 machines running SQL Server 2000/2005. The software allows a secondary SQL Server to take over the identity of the failed SQL Server while suffering no disruption or data loss. In this article we will discuss how to install and configure Double-Take for replication and mirroring.

How does it Work?

Double-Take software gives you the ability to configure a Source and Target machine and choose the directories and folders that you want to replicate from Source to Target. Double-Take uses a delta-replication strategy which only sends the changes since the prior replica. This provides a real-time fast replication of data from one server to the other minimizing the bandwidth. This is a very popular model for pushing data over a WAN.

Lab Environment

In order to successfully show you how to implement this strategy, you will need the following:

  • 2 Windows 2000/2003 servers
  • 2 copies of SQL Server 2000
  • 2 copies of Double-Take

I created my lab using VMWARE Workstation; this is a great piece of software for running multiple environments on one machine or server. First, I configured basic Windows 2003 Server installations followed by the installation of SQL Server 2000 (w/ SP3A or SP4) and finally Double-Take. You can install Double-Take by just accepting the installation defaults.

Configuring Double-Take on the Source Server

The only initial configuration on the Source server is to install the Operating System (OS), SQL Server 2000 with Service Pack 3A or SP4 and finally load Double-Take.

Configuring Double-Take on the Target Server

After the installation of Double-Take is complete, click Start | Administrative Tools, Services and choose the Double-Take service as shown in Figure A. Next, click the Log On folder and select Allow service to interact with desktop.

Click OK and shut down the following services on your target server:

  • MSSQLSERVER
  • SQLSERVERAGENT
  • Message Queuing (If installed)
  • Distributed Transaction Coordinator (DTC)

Once you have shut down these services, you will also need to set them to a manual status. Now that we have configured both the Source and Target, let's move on to configuring Replication and Mirroring.

Configuring Replication and Mirroring

Let's begin by clicking Start | Double-Take | Management console as shown in Figure B. Next, Double-Click your Source machine to logon (Figure C). In this lab, Belle is the Source server. Our next step is to right-click on the Source machine and choose Properties. Then, choose the Setup tab and deselect Perform Remirror After Auto-Reconnect (Figure D). If you do not deselect this, the source server could overwrite the target after a failback. We are now ready to create our replication set that will mirror and replicate to our Target server. In order to perform this, right-click on your Source machine and choose New Replication Set and enter the name of the replication set as shown in Figure E.

Next, choose the following directories you would like to replicate onto the Target machine. For SQL Server, I chose the following: Data and Log files (Figure F.)

Note: Do not forget to right-click on the replication set name and choose save.

Next, drag and drop your replication set onto the Target machine (Beast) as shown in Figure G. As you can see the Source Server, Replication Set, Target Server and IP address are automatically configured. I recommend that you just review the screen to make sure that you did not make any mistakes. When your review is complete, remember to click connect to start the mirror and replication process (Figure H.)

Finally, you can test mirroring and replication by creating new databases, tables, indexes, etc on the Source server and seeing it appear almost instantly on the Target server. In my next blog we will build upon what we have learned here by showing you how to configure a failover/failback to the Target/Source SQL Server automatically. We will also show you what to do in order to restore the SQL Server data on the Source machine to bring the server back online.

Figure a

Figure b

Figure c.

Figure d.

Figure e.

Figure f.

Figure g.

Figure h.

Editor's Picks