WSUS Post-deployment Configuration Failed – Windows Server 2022

by | Last updated 2023.05.20 | Published on 2022.06.02 | Guides, WSUS

If you try to install WSUS on Server 2022 using the Windows Internal Database (WID) or SQL Server you may get a “WSUS Post-deployment Configuration Failed” error message. If you go look at the Post-Install log, you will see:

Microsoft.UpdateServices.Administration.CommandException: The schema version of the database is from a newer version of WSUS
than currently installed. You must either patch your WSUS server to at least
that version or drop the database.
at Microsoft.UpdateServices.Administration.ConfigureDB.CheckForUnsupportedVersion(DBInstallType installType, Boolean dbExists)
at Microsoft.UpdateServices.Administration.ConfigureDB.ConnectToDB()
at Microsoft.UpdateServices.Administration.ConfigureDB.Configure()
at Microsoft.UpdateServices.Administration.ConfigureDB.Run(String instanceName, Action`1 logWriter, Boolean contentLocal)
at Microsoft.UpdateServices.Administration.PostInstall.Run()
at Microsoft.UpdateServices.Administration.PostInstall.Execute(String[] arguments)

To fix this:

Open a PowerShell in elevated mode by using “Run as administrator”

Run the code below to change 1 line of code in the VersionCheck.sql file:

Start-Process takeown.exe -ArgumentList '/f "C:\Program Files\Update Services\Database\VersionCheck.sql"' -Wait
Start-Process icacls.exe -ArgumentList '"C:\Program Files\Update Services\Database\VersionCheck.sql" /grant "administrator:(F)"' -Wait
(Get-Content "C:\Program Files\Update Services\Database\VersionCheck.sql") -replace "(^DECLARE @scriptMinorVersion\s+ int = \(11\)$)","DECLARE @scriptMinorVersion int = (51)" | Set-Content "C:\Program Files\Update Services\Database\VersionCheck.sql"

This will find the line

DECLARE @scriptMinorVersion     int = (11)

and replace it with

DECLARE @scriptMinorVersion     int = (51)

After this has completed, launch the post-installation steps again and it should now go through successfully.

Does wuauclt.exe /detectnow /reportnow work?

Does wuauclt.exe /detectnow /reportnow work?

What is wuauclt.exe? It stands for Windows Update Automatic Update CLienT There are many switches through the years that have been found, and with the help of Strings (Sysinternals), on a current version of Windows 10, you can see that the only ones listed are:...