podczas uruchamiania Kreatora czyszczenia serwera WSUS z przystawki MMC może wystąpić następujący błąd bazy danych WSUS:
błąd: Błąd bazy danych
wystąpił błąd podczas próby wykonania operacji na bazie danych. Może się to zdarzyć, jeśli baza danych jest bardzo zajęta, jeśli usługa bazy danych zostanie zatrzymana, jeśli połączenie z bazą danych zostanie utracone lub jeśli zadanie po instalacji nie zostanie zakończone pomyślnie. Jeśli problem nadal występuje, skontaktuj się z administratorem systemu.
kliknij Zresetuj węzeł serwera, aby spróbować ponownie połączyć się z serwerem.
jeśli nie wykonywałeś sprzątania od dłuższego czasu, to może się zdarzyć. Więc może zdecydujesz się przeczytać podręcznik wsusutil.exe narzędzie gdzie myślisz, że przełącznik deleteunneededrevisions rozwiąże wszystkie Twoje problemy, jednak wydaje się, że wsusutil.parametr exe deleteunneededrevisions nie istnieje w WSUS 3.1.
na szczęście możesz osiągnąć to samo za pomocą powershell. Zalety to:
- jeśli raz użyłeś tego skryptu powershell, możesz ponownie użyć Kreatora oczyszczania serwera z interfejsu graficznego.
- możesz zaplanować wykonanie tego skryptu powershell za pomocą Harmonogramu zadań (na przykład raz w miesiącu).
- na moim serwerze WSUS miałem około 600GB aktualizacji. Po uruchomieniu tego skryptu skompresowano prawie 2000 aktualizacji, oszczędzając prawie 200 GB miejsca na dysku!
jeśli zapisujesz zawartość skryptu powershell do „WSUSCleanup. ps1”, możesz wykonać ten skrypt w następujący sposób z okna wiersza polecenia DOS: powershell-plik „WSUSCleanup. ps1”
upewnij się, że otwierasz Wiersz polecenia DOS jako administrator!
sam skrypt ma tylko 11 linijek (13 jeśli dodasz komentarze):
# WSUSCleanup. ps1
:: LoadWithPartialName („Microsoft.UpdateServices.Administracja”) | / out-null
$wsus=:: GetUpdateServer();
$cleanupScope = new-object Microsoft.UpdateServices.Administracja.CleanupScope;
$cleanupScope.DeclineSupersededUpdates = $true
$cleanupScope.DeclineExpiredUpdates = $true
$cleanupScope.CleanupObsoleteUpdates = $true
$cleanupScope.CompressUpdates = $true
$cleanupScope.CleanupObsoleteComputers = $true
$cleanupScope.CleanupUnneededContentFiles = $true
$cleanupManager = $wsus.GetCleanupManager();
$cleanupManager.PerformCleanup ($cleanupScope);
# koniec skryptu
wyjście skryptu wyglądało następująco, gdy uruchomiłem go po raz pierwszy:
C:\scripts >powershell-plik „WSUSCleanup. ps1”
SupersededUpdatesDeclined : 0
ExpiredUpdatesDeclined : 0
ObsoleteUpdatesDeleted : 3
UpdatesCompressed : 1953
ObsoleteComputersDeleted : 0