Tags: WSUS, Datenbanken, Migration
Die meisten Installationen der Windows Server Update Services laufen auf der Windows Internal Database (WID). Möchte man nachträglich auf SQL Server umstellen, dann kann man dies relativ einfach mit den Kommandozeilen-Tools sqlcmd und wsusutil tun. Der Weg zurück ist damit ebenfalls möglich.
Betreibt man WSUS auf Server Core, dann haben alle Datenbankoptionen einen Nachteil. Die standardmäßig vorgesehene WID lässt sich nicht remote verwalten, so dass man sich dafür auf Kommandozeilen-Tools beschränken muss.
SQL Server Express kennt diese Einschränkung nicht, hat aber ein Limit von 10GB pro Datenbank. Dieses kann von einem WSUS-Server ohne weiteres erreicht werden. Ein vollwertiger SQL Server kennt diese Defizite nicht, kostet dafür aber Lizenzgebühren.
SUSDB von WID lösen
Wenn man sich trotzdem entscheidet, von der WID auf SQL Server (Express) zu wechseln, dann funktioniert dies ähnlich wie der Umzug der WID-Datenbank in ein anderes Verzeichnis. Im ersten Schritt hängt man die WID-Datenbank ab:
sqlcmd -E -S np:\\.\pipe\MICROSOFT##WID\tsql\query -Q "sp_detach_db 'SUSDB'"
SQL-Anbindung installieren
Danach sind noch Vorarbeiten notwendig. Sie bestehen darin, dass man das Feature WID Connectivity entfernen und SQL Server Connectivity hinzufügen muss. Man kann die beiden nicht parallel verwenden.
Den aktuellen Installationsstatus frägt man mit
Get-WindowsFeature -Name UpdateServices*
ab. Daraus geht auch hervor, ob WSUS zurzeit auf WID oder SQL Server läuft.
Um WID zu deinstallieren, gibt man
Remove-WindowsFeature -Name UpdateServices-WidDB
ein und mit
Install-WindowsFeature -Name UpdateServices-DB
fügt man die SQL-Anbindung hinzu.
Bei Bedarf kopiert man die SUSDB-Dateien nun an einen anderen Speicherort.
SUSDB an SQL Server anfügen
Zu bedenken ist bei der Konfiguration des SQL Servers, dass WSUS nur die Windows-Authentifizierung erlaubt. Wenn die Datenbank auf einem separaten Server läuft, dann muss man sich noch darum kümmern, dass das Computerkonto des WSUS-Servers die nötige Login-Berechtigung erhält.
Nun kann man SUSDB in SQL Server Management Studio von einer Workstation aus remote anfügen. Dazu öffnet man im Objekt-Explorer das Kontextmenü von Datenbanken und startet den Befehl Anfügen. Im folgenden Dialog klickt man auf Hinzufügen, navigiert man zum Verzeichnis, in dem man SUSDB abgelegt hat, und öffnet die Datenbank.
WSUS-Konfiguration anpassen
Zum Schluss geht es noch darum, die WSUS-Konfiguration auf die neue Datenbank umzustellen. Diesem Zweck dient der Befehl
wsusutil.exe postinstall SQL_INSTANCE_NAME="localhost" CONTENT_DIR=D:\Content
Der Parameter Content_dir ist auch dann erforderlich, wenn sich das Verzeichnis nicht geändert hat. In diesem Beispiel läuft der SQL Server auf dem gleichen Server wie die WSUS, und diese nutzen die Default Instance. Bei einem Remote Server müsste man das Format Hostname\Instance-Name verwenden, falls nicht die Default Instance zum Einsatz kommt.
Falls man eine geplante Aufgabe für die Wartung der WSUS-Datenbank eingerichtet hat, dann sollte man noch daran denken, diese von WID auf SQL Server umzustellen. Bei einem lokal installierten SQL Server würde sich für die Default Instance die Befehlszeile auf
sqlcmd -d SUSDB -i C:\<Pfad>\WsusDBMaintenance.sql
ändern.
Von SQL Server zurück zu WID
Der hier beschriebene Weg lässt sich auch umgekehrt beschreiten. Wenn man aus irgendwelchen Gründen von SQL Server wieder auf die WID zurückkehren möchte, dann führt man zuerst im SQL Server Management Studio aus dem Kontextmenü von SUSDB den Befehl Tasks => Trennen aus.
Es folgt das Deinstallieren von SQL Server Connectivity und das Hinzufügen von WID Connectivity. Danach hängt man die Datenbank bei WID mit
sqlcmd.exe -E -S np:\\.\pipe\MICROSOFT##WID\tsql\query -Q "sp_attach_db @dbname=N'SUSDB',@filename1=N'D:\DB\SUSDB.mdf', @filename2=N'D:\DB\SUSDB_log.ldf'"
wieder ein. In diesem Beispiel befindet sie sich unter d:\db. Zum Schluss ruft man noch
wsusutil.exe postinstall CONTENT_DIR=D:\Content
auf, also ohne den Parameter SQL_INSTANCE_NAME.
Täglich Know-how für IT-Pros mit unserem Newsletter
Ähnliche Beiträge
- WSUS-Bereinigung bricht ab: Timeout für Datenbank und IIS erhöhen
- Windows Server Update Services (WSUS) auf einen anderen Server migrieren
- WSUS-Datenbank und Updates auf anderes Verzeichnis umziehen
- Verlängerter Support für Windows Server 2008 (R2) und SQL Server 2008 (R2) On-Prem oder auf Azure
- WSUS-Datenbank mit Windows Server Backup sichern
Weitere Links
1 Kommentar
Wer WSUS auf WID mit Server 2019 betreibt wird ggf. enttäuscht sein, denn die WID basiert offenbar nicht mehr auf SQL 2012 Express und kann daher nicht auf SQL 2014 nicht migriert werden. Gibt es ähnliche Erfahrungen?