We have three SQL server 2008 r2 servers (principal, mirror and witness) setup for mirroring (with safety option).

I see in the Mirror server logs that there was a "The mirroring connection to TCP://PRINCIPAL:1234 has timed out" error for databaseA. However I do not see a similar error in the Principal server log. A failover did not occurr.

So from what I understand the Mirror was able to communicate with the Witness and but not the Principal.

The log entries after that in the Mirror server are:

  • Database mirroring is inactive for database 'databaseA'.
  • Starting up database 'databaseA'. Bypassing recovery for database 'databaseA' because it is marked as a mirror database, which cannot be recovered.
  • Database mirroring is active with database 'databaseA' as the mirror copy.

I do not see a timeout error in the Principal, but I do see these log entries at same time at the ones above:

  • Database mirroring is inactive for database 'databaseA'.
  • Database mirroring is active with database 'databaseA' as the principal copy.

Again, the database was never failed over (which is good because the Principal was up). My question is, Do the Witness somehow tell the Mirror that the Principal is up so that the Mirror does not fail over?


As I understand the internals of mirroring both the mirror and the witness would need to loose the connection to the principal for the failover to happen.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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