Error while SQL Server Service Pack or Cumulative Updates: "Cached MSI file is missing”

Are you getting the following Cached MSI file missing error (Error Code 0x84B20002) while trying to do SQL Server Service pack or cumulative packs upgrades? If yes, this article will help understand the error and its resolution.

SQL Server Patching Error - The cache MSI file is missing

The Windows Installer Cache folder (C:\Windows\Installer) stores files for installed applications using the Windows installer technology. These files help upgrade or uninstall the applications. If you have deleted files from the installer folder, you get the error in missing MSI MSP files while applying the SQL Server service pack or cumulative packs.

  • MSI file: Windows Installer database file

  • MSP file: Windows Installer patch file

Once you install SQL Server, its original MSI files are stored in the installer folder. The following service pack or cumulative pack also stores the relevant MSI or MSP files in the cache folder. The subsequent upgrades rely on these cache files. Therefore, if SQL Server cannot find them, you get errors about missing MSI or MSP files.



The solution of missing SQL Server patching MSI or MSP files for SQL Server patching

Navigate to the GitHub repository (https://github.com/suyouquan/SQLSetupTools/releases/) and download the latest version of the FixMissingMSI tool. It downloads a compressed FixMissingMSI_V2.2.1_For_NET45.zip.

FIx Missing MSI SQL Server patching

Copy the Zip file onto the Server where we get the MSI or MSP error and unzip it. Double-click on the FixMissingMSI file to launch the tool.

Launch the FixMissingMSI tool

It launches the following application to scan SQL Server-related missing MSI\MSP errors.

scan the extracted contents

Click on Scan now and press Yes.

Scan now

As shown below, it reports 109 missing files for my demo SQL instance. We need to fix these missing MSI files to successfully upgrade SQL Server.

Check all missing MSI\MSP files for SQL Server patch

Before we fix it, let’s understand the tool output.

  • Status: Missing

  • Package name: This column gives the missing MSI or MSP file name

  • CachedMsiMap: The Windows Installer folder stores the MSI or MSP file using the cached name. It is system generated file name. SQL Server service pack or Cumulative pack upgrade looks for the same cached file name in the installer folder.

  • Product version: It is the Product version of the MSI file. This product version is the same as the SQL Server product version. You need to copy the same MSI file version into the installer folder. For example, if it reflects SQL Server 2016 SP2 version, you cannot copy RTM or SP1 file.

  • Product Name: It is the SQL Server product name



We identified that my SQL Server has 109 missing files, and I need to fix them to apply the SQL Server service pack or Cumulative pack. It seems complicated, right? Let’s fix it using a simple solution.

  • First, identify the existing SQL Server version, edition, and applied service pack or cumulative packs for your SQL Server instance.

  • Launch Control Panel and installed updates.

View installed SQL Server Service pack or Cumulative Upgrades

As shown below, it lists the following for my SQL instance.

  • Service Pack 2 ( KB4052908)

  • Hotfix 5865(KB4583461)

Service pack and hotfix

Therefore, we need the files from Service pack 2 ( KB4052908), Hotfix 5865(KB4583461), i.e., CU15, and the RTM version.

We need to extract setup files in a single folder with the following subfolders.

Extract patches

Once you download the CU or service pack from Microsoft, you get an EXE file like the one below.

EXE file

To extract the files, launch the command prompt and navigate to a directory with EXE and extract it using the /x:foldername argument. The following query extract EXE files into the CU15 folder in the same directory

Extract EXE into a folder

Once the command completes, you can see the CU15 folder with extracted content

View extracted folder content

Similarly, you can extract the pre-installed versions of EXE and store them in a single folder, as shown above.

Now, re-launch the FixMissingMSI application and provide the location of your folder that contains all extracted files, as shown below.

re-launch the FixMissingMSI application

Now, click on Scan, and it will report the same number of missing MSI files. As shown below, I still have 109 missing MSI files.

Number of mising MSIs

Go to Fix-> Fix All

Fix All Missing MSIs

Provide your confirmation for automatically fixing the MSI files. It fixed 108 items, and I have only 1 missing file now. Sometimes, it might not fix all missing MSI or MSP files, but it’s okay as SQL Server patching might work without these files. If you still get an error, try to manually fix the remaining MSI or MSP files.

View Fixed SQL Server Patching missing MSIs

You can try running your SQL Server service pack or cumulative update, and it should work. This tool will save you from the last-minute hustle and resolve the SQL Server patching missing MSI\MSP files.




466 views0 comments