We have a SQL Server 2005 in one of our company's locations.

Since DB calls from other locations are very slow, we would like to set up another SQL Server on the other location and keep the server databases in synch. So a user can make DB calls from either systems and get the same results. Same with changes to the data.

We can (and probably should) update to a newer version of SQL Server. But we would like to avoid using the expensive Enterprise Version of SQL Server.

What mechanism could we use to set that up cheap and simple?


Always On Availability Groups allows active (queryable) secondaries, and may do what you want. It's available in standard edition in SQL Server 2016. It does, however, require Windows server clustering, but Windows Server 2012 allows clustering in Standard Edition (I think).

It's not, however, simple.

If you're insisting on using SQL 2005 (which is end of life in April), those options aren't going to work for you.

The cheapest solution would probably be to set up log shipping with standby. You can do this with standard edition, there are no version or OS requirements (well, you can script it with Express but that's less easy), and it's fairly easy to set up. Just be aware that people will be kicked out during the restore, and that the secondary will be a few minutes out of date (depending on how often you restore).

  • Thanks! I also heared about Merge Replication. Might that be an option too? – juergen d Jan 19 '16 at 21:35
  • Sure, that could also work. It would work better than log shipping if you plan to make changes at the remote location. There are certain restrictions, however--something to keep in mind. technet.microsoft.com/en-us/library/… – Katherine Villyard Jan 19 '16 at 21:53
  • Log Shipping is off the table since I cannot write to the secondary database. – juergen d Jan 24 '16 at 11:40

Not the answer you're looking for? Browse other questions tagged or ask your own question.