2

I am in the process of upgrading our SQL 2017 servers to the current CU. I have ran across two systems that won't allow me to apply the update. In the SQL installer, I see below text when I click on the SQL Instance name.

The version of SQL Server instance MSSQLSERVER does not match the version expected by the SQL Server update. The installed SQL Server product version is 14.0.3381.3, and the expected SQL Server version is 14.0.1000.169."

Installer Screen

I am unsure where the installer pulls the version info from. I have compared the registry against a couple of other systems and nothing is standing out as being incorrect, so not sure where it is pulling the 14.0.1000.169 value for the "expected sql version". I tried removing the previous CU so I could reapply it, but it didn't appear that it removed fully as it was still in the add/remove programs screen. Everything I have found online points to older versions where people were trying to install CUs on top of the wrong Service Packs, which doesn't apply in this case since SQL 2017 doesn't have service packs.

Any ideas would be greatly appreciated.

Brendan McCaffrey
  • 3,444
  • 2
  • 8
  • 29
dmcook
  • 21
  • 5

1 Answers1

0

Solution below

We found that there is an instance mapping for Report Server that maps default instance name (MSSQLSERVER) to SSRS instance ID:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\Instance Names\RS MSSQLSERVER REG_SZ SSRS

enter image description here

This causes the SQL setup to fail to patch the default instance.

Recommendation/Resolution

Deleting the 'MSSQLSERVER REG_SZ SSRS' registry key at 'HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\Instance Names\RS' allows SQL setup to successfully patch the default instance. Upon further investigation Furthermore, we confirmed that this key should not exist as it implies the presence of a second SSRS 2017 instance which is not possible as SSRS 2017+ does not support multiple instances on the same server.

dmcook
  • 21
  • 5