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.