Problem Patching a SQL Server Cluster

Problem:

I was working with a SQL Server 2014 two node cluster in our test environment.  After the cluster had been setup, I was asked to change the drive letters of the disks used by the database role in the cluster.  I was unaware the issues that this would cause patching.

Following the standard patching procedure, move all resources to the second node while patching the first node.  After successfully patching the first node, I attempted to move the resources from the second node back to the first node, and failed with the following warnings and errors in the FailoverClustering log in the Event Viewer:

Warning –
[RES] SQL Server <SQL Server (…)>: [sqsrvres] Worker Thread (…): ReAclDirectory : Failed to apply security to …\MSSQL\Data (…).
Warning –
[RES] SQL Server <SQL Server (…)>: [sqsrvres] Worker Thread (…): ReAclDirectory : Failed to apply security to …\MSSQL\Log (…)
Warning –
[RES] SQL Server <SQL Server (…)>: [sqsrvres] Worker Thread (…): ReAclDirectory : Failed to apply security to …\MSSQL\Backup (…)
Warning –
[RES] SQL Server <SQL Server (…)>: [sqsrvres] Worker Thread (…): DoREPLSharedDataUpgrade : Failed to create working directory.
Error –
[RES] SQL Server <SQL Server (…)>: [sqsrvres] SQL Cluster shared data upgrade failed with error 0 (worker retval = 3). Please contact customer support

Resolution:

First Thank You to Pinal Dave for publishing:

SQL SERVER – Unable to bring resource online – Error DoREPLSharedDataUpgrade : Failed to create working directory

Because SQL Server would not start up on the first node of the cluster, I had to patch the second node with SQL Server shutdown, which was a total outage of SQL Server.

  1. On the second node of the cluster, I shutdown SQL Server and the SQL Agent, but brought all the disks for that role back to an on-line status.
  2. Following Pinal Dave’s post listed above, I searched and changed every registry entries found with the old drive letters with in the folder:
    • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL12.MSSQLSERVER\
  3. For the directories listed in the errors above (DATA, LOG, BACKUP, and repldata), I change the security on the folder to “Full Access” for the Everyone group.  However I believe this was my own internal security issue related to my user account attempting to apply the patch.
  4. Then I applied the SQL Server patch successfully.
  5. For the directories that I granted Everyone group “Full Access” in step 3, I removed the Everyone group from those four folders.
  6. Then I brought the SQL Server role online & verified the updated patch (SELECT @@VERSION).
  7. Then I moved the SQL Server role over to the first node & again verified the patch.

 

Categories: SQL Server, Windows

Leave a Reply