Beim Ausführen des WSUS-Serverbereinigungsassistenten über das MMC-Snap-In kann der folgende WSUS-Datenbankfehler auftreten:
Fehler: Datenbankfehler
Beim Versuch, einen Datenbankoperation auszuführen, ist ein Fehler aufgetreten. Dies kann passieren, wenn die Datenbank sehr ausgelastet ist, wenn der Datenbankdienst gestoppt wird, wenn die Verbindung zur Datenbank unterbrochen wird oder wenn die Aufgabe nach der Installation nicht erfolgreich abgeschlossen wurde. Bitte wenden Sie sich an Ihren Systemadministrator, wenn das Problem weiterhin besteht.
Klicken Sie auf Serverknoten zurücksetzen, um erneut eine Verbindung zum Server herzustellen.
Wenn Sie die Bereinigung längere Zeit nicht durchgeführt haben, kann dies passieren. Sie könnten sich also entscheiden, das Handbuch des wsusutil durchzulesen.exe-Tool, wo Sie denken, dass die deleteunneededrevisions Schalter werden alle Ihre Probleme zu lösen, aber es scheint, dass die wsusutil.der exe-Parameter deleteunneededrevisions ist unter WSUS 3.1 nicht vorhanden.
Zum Glück können Sie dasselbe mit Powershell erreichen. Die Vorteile hier sind:
- Wenn Sie dieses Powershell-Skript einmal verwendet haben, können Sie den Server Cleanup Wizard erneut über die GUI verwenden.
- Sie können die Ausführung dieses Powershell-Skripts mithilfe des Taskplaners planen (z. B. einmal im Monat).
- Auf meinem WSUS-Server hatte ich ungefähr 600 GB Updates. Nach dem Ausführen dieses Skripts wurden fast 2000 Updates komprimiert, wodurch fast 200 GB Speicherplatz eingespart wurden!
Wenn Sie den Inhalt des Powershell-Skripts in „WSUSCleanup.ps1“ speichern, können Sie dieses Skript wie folgt in einem DOS-Eingabeaufforderungsfenster ausführen: powershell -Datei „WSUSCleanup.ps1“
Stellen Sie sicher, dass Sie die DOS-Eingabeaufforderung als Administrator öffnen!
Das Skript selbst ist nur 11 Zeilen lang (13, wenn Sie Kommentare einfügen):
# WSUSCleanup.ps1
::LoadWithPartialName(„Microsoft.UpdateServices.Administration“)` / out-null
$wsus = ::GetUpdateServer();
$ cleanupScope = neues Objekt Microsoft.UpdateServices.Verwaltung.Bereinigungsbereich;
$Bereinigungsbereich.DeclineSupersededUpdates = $true
$Bereinigungsbereich.DeclineExpiredUpdates = $true
$cleanupScope.CleanupObsoleteUpdates = $true
$Bereinigungsbereich.CompressUpdates = $true
$Bereinigungsbereich.CleanupObsoleteComputers = $true
$Bereinigungsbereich.CleanupUnneededContentFiles = $true
$cleanupManager = $wsus.GetCleanupManager();
$ cleanupManager.PerformCleanup($cleanupScope);
# Skript ENDE
Die Ausgabe des Skripts sah beim ersten Ausführen wie folgt aus:
C:\scripts >Powershell -Datei „WSUSCleanup.ps1“
ersetztupdatesdekliniert : 0
ExpiredUpdatesDeclined : 0
ObsoleteUpdatesDeleted : 3
UpdatesCompressed : 1953
ObsoleteComputersDeleted : 0