SQL Server Mirroring vs. 3rd Party Replication Products like DoubleTake

mirroringsql-server-2008

I'm charged with looking after several SQL Server instances, most of which use SQL Server mirroring to replicate data for DR purposes.

I automatically script logins, roles & jobs to the mirror, in the event of a failover we literally need to run a script to bring the mirrors online, apply the logins, apply the rolls and jobs and away they go (give or take a few mismatched SIDs & the usual niggles).

Now, I have documented this failover process in case I am not on site in the event of a failure; however, management deems the process to be too complicated and keeps trying to push 3rd party replication products such as DoubleTake that could do instance level replication.

(Company did not want to use clustering for instance level as the shared storage would be a single point of failure – they were not willing to buy multiple replicating SANs.)

We have databases ranging from a few meg to 200GB+.

Is DoubleTake really practical for DR in this manner? Can I trust that the data will be bang up to date between the primary and secondary? (We operate high safety mode mirroring for this very reason.)

I've read lots of opinions on forums, but always either biased or unconfirmed; I'm after some first-hand experience with these products.

Best Answer

SQL Server's native database mirroring includes something really slick: automatic page repair. If the principle detects a corrupt page on disk, it fetches a clean copy of the page from the mirror automatically without taking the database down. You don't get that level of database repair with any third party product. That database awareness is one of the reasons I prefer the native tools - well, that and I just don't trust third party filter drivers on database servers. I've seen too many blue screens of death due to third party filter driver bugs.

Bad news: database mirroring is deprecated in SQL 2012. This means it's still around for this version, but will be removed in the future.

Fantastic news: SQL Server 2012 introduced AlwaysOn Availability Groups to replace mirroring, and they're awesome. You can actually query or back up from the mirror, and you get up to four mirrors. Some can be synch and some can be asynch. This gives you all kinds of flexibility over database mirroring, and it blows away the third party tools.