I recently set up a three servers running MSSQL Server 2016 in a high safety synchronous mirroring configuration. Right now, everything is working normally. Any changes made in the principal are replicated on the mirror consistently.

However, both the Principal and the Mirror server constantly have the error:

"Database mirroring connection error 4 'An error occurred while receiving data: '10054(An existing connection was forcibly closed by the remote host.)'.' for 'TCP://WITNESS_SERVER:5022'."

The Witness server also has the exact same error toward both the Principal and the Mirror. There are no errors between the Principal and Mirror, and there are no other accompanying errors (Handshake rejected, etc...). Interestingly, these disconnects occur repeatedly exactly 100 seconds apart without cease. They do not happen at the same time for the Mirror and Principal, and currently are offset by about 12 seconds. Has anyone run into a similar issue or know exactly what sort of issue can lead to 100 second forced disconnects?

  • Generally, when you see An existing connection was forcibly closed by the remote host it's either an application killing the socket or a firewall killing the connection. I'd check the firewalls between the servers. Oct 27, 2016 at 21:05
  • All three servers have the firewall disabled on private networks. In between disconnects, the Principal and Mirror both connect to the Witness and send and receive data as normal. This makes me think it probably isn't a firewall issue. If it was, wouldn't they be unlikely to connect and stay connected over 100 second time periods?
    – Rick
    Oct 28, 2016 at 13:46
  • I wasn't talking windows firewall, I was speaking about other firewalls between the systems. The error states it was forcibly closed, which means something else did it. The fact it happens every 100 seconds tells me that there is something between them that checks for connections around that often and then stops traffic. Every time I had this happen it was a network appliance shutting down my sockets. Oct 28, 2016 at 15:10
  • 1
    We are experiencing the same issue on SQL Server 2016. Did you find out about it? Nov 16, 2016 at 9:46
  • 1
    Possibly support.microsoft.com/en-au/help/3210699/… -- seemingly published today: try SP1 CU1 or RTM CU4 (CC @Ola) -- am testing now Jan 18, 2017 at 13:09

1 Answer 1


We reported the issue to Microsoft support and got it fixed. I have also tested SP1 CU1 and the database mirroring error messages have disappeared. So I think that all is good. https://support.microsoft.com/en-us/help/3210699/fix-error-messages-are-logged-if-database-mirroring-is-configured-by-transact-sql-in-sql-server-2016-and-no-database-activity-occurs-for-more-than-90-seconds


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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