SQL synchronisation and replication


We have one SQL database that I need to provide redundancy for. A SAN soluition is out of the question because of price.

Is there a method of providing active/active load balancing on two servers that have the database at each local storage, have them replicate and synchronise so if one db dies or server dies, the other takes over all processing. Is this functionality built into SQL or is there a third party app?

Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

well you can have to option for you,

1.) Mirroring

2.) Transactional Replication

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
10 Tips to Protect Your Business from Ransomware

Did you know that ransomware is the most widespread, destructive malware in the world today? It accounts for 39% of all security breaches, with ransomware gangsters projected to make $11.5B in profits from online extortion by 2019.

If you want load-balancing, you'll prefer to look at peer-to-peer replication, with a Network Load Balancer to distribute the queries. You should be able to configure your NLB to avoid a server that has fallen down.

Mirroring will put all the load on one, but give you the nice automatic failover without needing an NLB.

So I guess you have to work out what you're actually after.

Another idea would be to use a Cluster. Set up a Windows Cluster in Active/Passive, with some shared storage that they can both see. Then install SQL Server using the "this is a cluster" option. Windows will take care of the failover for you, and SQL will handle the rest. If the shared storage falls over, you have an issue, and you're not balancing the CPU load.

For balancing load, peer-to-peer replication is the way to go. It can be a pain to look after though, and it's definitely nicer if you make all the alterations go to one server, and only share out the SELECT queries.

Jagdish DevakuSr DB ArchitectCommented:
Network_PadawanAuthor Commented:
Hi Rob farley,

Can you recommend a good network load balancer product? Do you recommend a hardware or software solution?

In regards to "it's definitely nicer if you make all the alterations go to one server, and only share out the SELECT queries", how is this done exactly?
NLB-wise... more of a question for networking experts. Cisco switches, and all that.

And as for reads/writes, just tell your application to use one connection string for changes, and another when changes aren't being made.

That way, your changes  are only going in one direction and management becomes much easier.

It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Microsoft SQL Server 2008

From novice to tech pro — start learning today.