I'm currently managing a database of ~ 40 giga in a HA/mirrored set up with primary, mirror and witness nodes.
When the system is fully synchronized i noticed a decrease in rate of transactions which has a negative impact on my production environment (general slowness and UI latency).
When the mirror is temporarily suspended everything works as it should.
Principal and mirror are built on the same server model, same OS(SQL server 2012) and same hardware specs.
Is there anything i should check to match the performance when the mirror is suspended?
Best Answer
There are two modes for database mirroring:
The key is in the names: high safety is safe (but slow), and high performance is faster (but less safe.)
You've noticed that when you suspend the mirror, things get faster - that's because your mirroring is set up with high safety.
If your business is willing to lose data when the primary fails, then you can keep doing mirroring, but switch it from high safety to high performance. (You can change this at the database level at any time.)
If your business is NOT willing to lose data, then it's time to start troubleshooting which layer of mirroring is causing you problems:
Troubleshooting that is kinda beyond the scope of what I can do in an answer here though.