Its been a long time that i wanted to blog about this error for the benefit of the DBA group and finally found time to blog this. 🙂
Error: “The SQL Server registry keys from a prior installation cannot be modified. To continue, see SQL Server Setup documentation about how to fix registry keys.”
Synopsis:We received the above mentioned error while we were patching SQL server 2008 to SP4 on a server running Windows 2003. I tried out solutions provided in various posts on the internet i.e. gave explicit full permissions on registry keys, copied /replaced”FixSqlRegistryKey_x86.exe” (Path:C:\Program Files\Microsoft SQL Server\100\Setup Bootstrap\Sqlserver2008\x64) from the SQL server setup but none of them helped to resolve the issue.
I referred the ‘Detail.txt’ log file which was generated in “setup bootstrap\log\” folder and found the following error:
Solution: We followed the following procedure to resolve the issue and successfully patched the SQL Server 2008. Thanks to experts who suggested the workaround
a) Double click on the Service pack executable file and note down the temp path to which the service pack contents extracts to. In our case it was extracting to E drive[ Refer below screenshot]
b) The installation failed again with the above mentioned error and don’t close the window so that the above mentioned [refer step a)] temp location would still be accessible. [Refer below screenshot]
c) Go to the temp location [refer step a)] and rename “FixSqlRegistryKey_x86.exe” say something like “FixSqlRegistryKey_x86_old.exe” [Refer below screenshot]
d) Copy “FixSqlRegistryKey_x64.exe” from the above mentioned temp location and paste it in same location. Rename “copy of FixSqlRegistryKey_x64.exe” to “FixSqlRegistryKey_x86.exe” . Click on “re-run” button on SQL server patching window and now the rules check validation would complete successfully [Refer below screenshot] and continue with patching.