Problem Description
=================
Following the Lync Deployment Wizard to setup Database Mirroring with a witness for Lync 2013, it fails.
Story
=================
1. When I filled all the blanks in deployment wizard, and tried to publish topology, I got the following errors in report.
· Overall status: “Completed with errors”
· Error I get log:
But when I tried to use UDL file to connect to the LYNCDB2, I succeeded.
2. I run the publish topology wizard again, shows no error. Here is the question, does this no error means mirror succeeded?
3. Check the status of any Lync database, it shows:
4. Go to primary, mirror, and witness and check status. I saw:
· Databases in Primary are OK, only not configured for mirroring.
· Databases in Mirror show status of “In Recovery”.
· There are no Lync databases in Witness SQL instance.
5. Go to the mirroring file share, I can see full backup and transaction log backup. So, preparation for mirror should be OK.
6. Tried to manually setup Mirroring in Primary, failed. Because databases in Mirror is in “In Recovery” status. Databases in “In Recovery” status cannot be modified, and cannot be deleted.
7. To continue, we have to get rid of the “In Recovery” status in mirror instance. Use command below, and we can get a database change status to “Restoring”.
8. Tried to manually setup mirroring again. But the database will change status back to “In Recovery”. Back to starting point.
9. Read error log, we can see error below:
Database Mirroring login attempt failed with error: 'Connection handshake failed. There is no compatible encryption algorithm. State 22.'. [CLIENT: 172.24.15.147]
10. Following this error message, we run the following SQL statement on primary, mirror, witness.
We found that primary and witness shows “RC4”, while the mirror shows “AES”
11. Run the following SQL statements to drop and recreate a new mirroring endpoint on mirror instance.
12. Run the following SQL statement to remove each problem databases from mirroring, and the status of those databases will show “Restoring”.
13. Manually setup SQL mirroring for a database, we finally succeeded.
Primary database shows status as below:
Mirror database shows status as below:
14. Continue the steps for other Lync DBs, and we will have mirrored backend setup finished.
Summary
======================
Following wizard of Lync 2013 and expecting the wizard will automatically setup database mirroring for me, but didn’t end up as expected.
Lync oddly created mirroring endpoints using different encrypt methods, two are of “RC4”, one is of “AES”. Totally comes out of nowhere. -_-||
This caused a series of problems and troubleshooting. I have gone through so many articles to get this over with. Microsoft…
Articles that helped with this troubleshooting
======================
Troubleshooting SQL Server Database Mirroring Problems with Best Practices: Requirements, and the 64-bit Benefit
Remove Database Mirroring (SQL Server)
https://msdn.microsoft.com/en-us/library/ms190471.aspx
SQL SERVER – The server network address “TCP://SQLServer:5023″ can not be reached or does not exist. Check the network address name and that the ports for the local and remote endpoints are operational. (Microsoft SQL Server, Error: 1418)http://blog.sqlauthority.com/2010/01/11/the-server-network-address-tcpsqlserver5023-can-not-be-reached-or-does-not-exist-check-the-network-address-name-and-that-the-ports-for-the-local-and-remote-endpoints-are-operational-microso/https://msdn.microsoft.com/en-sg/library/ms187050.aspxView the State of a Mirrored Database (SQL Server Management Studio)