Serverbereinigungsassistent läuft nicht durch Timeout Serverbereinigung WSUS Datenbankwartung
Die folgenden Möglichkeiten sind mit einer WSUS 3.0 SP2 Umgebung auf einem Windows Server 2008 R2 (Small Business Server 2011 Standard) getestet worden. Die vorliegende Datenbank ist Windows Internal Database.
Datensicherung durchführen (!).
Anschließend sollten alte oder unnötige Updates über die WSUS-Konsole abgelehnt werden.
Die Basiskonfiguration welche Produkte synchronisiert werden sollte überprüft werden:
Sind englisch-sprachige Updates wirklich nötig?
Welche Art von Updates werden benötigt (z. B. Treiber)?
Bestimmte Produktupdates wie Exchange etc. sollte man besser selber installieren und auch selber aufrufen, diese Updates kann man also auch entfernen
Nur die Betriebssysteme und Komponenten auswählen die tatsächlich eingesetzt werden.
Den Serverbereinigungsassistenten starten und jeden der anderen Punkte außer dem ersten jeweils einzeln durchlaufen lassen.
Mit wsusutil (C:\Program Files\Update Services\Tools) folgende Kommandos auführen:
wsusutil removeinactiveapprovals INFO:Dieser Befehl löscht Updates, die durch Änderungen an den ausgewählten Sprachpaketen nihct mehr verwendet werden.
wsusutil reset
Dieser Befehl gleicht die Daten in der Datenbank mit dem tatsächlich gespeicherten Inhalten ab. Fehlen bestimmte Dateien, werden diese nachgeladen.
"iisreset" in einer privilegierten Eingabeaufforderungssitzung durchführen.
Die Datenbank-Instanz neustarten (Services.msc>Windows Internal Database (MICROSOFT##SSEE))
Installation des SQL Management Studios 2008 R2 - sofern nicht bereits vorhanden.
Aktivierung Named Pipes für die Windows Internal Database-Instanz
Starten Sie den "SQL Server Configuration Manager"
Erweitern Sie den Punkt "SQL Server-Netzwerkkonfiguration".
Klicken Sie auf "Protokolle für MICROSOFT##SSEE".
Klicken Sie mit der rechten Maustaste auf "Named Pipes" und wählen Sie "Aktivieren".
Starten Sie den Dienst "Windows Internal Database (MICROSOFT##SSEE)" neu.
Öffnen einer Datenbankverbindung zur WiD (Windows Internal Database) des WSUS mittels SQL Management Studio 2008 R2
Klicken Sie mit der rechten Maustaste auf "SQL Server Management Studio" und wählen Sie "Als Administrator ausführen". Sollten Sie diesen Schritt nicht befolgen, erscheint beim Versuch der Verbindung zu der Datenbank ein Authentifizierungsfehler.
Geben Sie als Servernamen folgenden Pfad an:
\\.\pipe\MSSQL$MICROSOFT##SSEE\sql\query
Ggf. ist es nötig in den "Optionen" unter "Verbindungseigenschaften" als "Netzwerkprotokoll" "Named Pipes" auszuwählen.
Erweitern Sie im Objekt-Explorer (linke Seite) den Punkt "Datenbanken"
Klicken Sie mit der rechten Maustaste auf "SUSDB" und wählen Sie "Neue Abfrage".
Auf der rechten Seite öffnet sich ein Tab in welches Sie die in den folgenden Schritten erläuterten Skripte einfügen.
Kopieren Sie den Code von der TechNet-Gallery in den Zwischenspeicher und fügen Sie den Code in das Abfragefenster des SQL Server Management Studios ein, klicken Sie dann auf das rote Ausrufezeichen oder drücken Sie die Taste "F5".
Microsoft empfiehlt eine regelmäßige (monatliche) Anwendung eines Wartungsskripts um einen einwandfreien Betrieb des WSUS zu gewährleisten.
Nach Durchführung des Maintenance-Skripts nochmals versuchen den Serverbereinigungsassistenten auszuführen.
Sollte der Versuch wiederum fehlschlagen, öffnen Sie das SQL Management Studio 2008 R2 und führen führen Sie folgendes Skript in einer Abfrage aus: INFO: Die Ausführung des Skripts kann u. U. mehrere Tage dauern. Da über die Konsole ein Timeout definiert ist, schlägt die Bereinigung über den Assistenten fehl. Im SQL Management Studio ist der Timeout per Default auf unendlich gestellt.
Prüfen Sie in den Abfrageoptionen ob unter Ausführung>ANSI der Haken bei "SET QUOTED_IDENTIFIER" gesetzt ist.
USE susdb GO DECLARE @var1 INT DECLARE @msg nvarchar(100) CREATE TABLE #results (Col1 INT) INSERT INTO #results(Col1) EXEC spGetObsoleteUpdatesToCleanup DECLARE WC Cursor FOR SELECT Col1 FROM #results OPEN WC FETCH NEXT FROM WC INTO @var1 WHILE (@@FETCH_STATUS > -1) BEGIN SET @msg = 'Deleting ' + CONVERT(varchar(10), @var1) RAISERROR(@msg,0,1) WITH NOWAIT EXEC spDeleteUpdate @localUpdateID=@var1 FETCH NEXT FROM WC INTO @var1 END CLOSE WC DEALLOCATE WC DROP TABLE #results
Thomas Windscheif arbeitet bei excITe Consulting und ist langjähriger Berater im Bereich IT-Infrastruktur und Groupware. Sowohl Kleinunternehmen z. B. im Handwerk als auch der größere fertigende Mittelstand gehören zu seinem Projektumfeld. Im Wesentlichen gehören die Planung von Infrastruktur-Migrationen (Novell/Micro Focus, Microsoft), Cloud-Lösungen (Office365), Groupware-Umgebungen (z. B. Exchange) und deren Umsetzung zu seinen Aufgaben. Neues begeistert ihn aber ebenso und so unterstützt Thomas Windscheif auch bei themenfremden IT-Systemen, überall da wo er helfen kann.
Sein Ziel: Die Mehrwerte der heutigen IT-Lösungen für einfacheres und modernes Arbeiten beim Kunden einbringen.
Login
Sie haben ein ungelöstes Problem in Ihrer Exchange Server oder Microsoft-Infrastruktur? Treten Sie gerne mit mir in Kontakt.
Sowohl bei einfachen Exchange Installationen, als auch bei hochverfügbaren, lastverteilten Mehrstandort-DAG-Topologien mit Loadbalancern
unterstütze ich Sie -auch kurzfristig- sehr gerne.
- Tool zum Konvertieren von Agfeo-Adressbüchern nach 3CX -
Im Rahmen eines Migrationsprojektes bei einem Kunden der seine Afgeo-Anlagen gegen eine 3CX getauscht hat , habe ich ein PowerShell-Script entwickelt, welches den Adressbuch-Export aus der Agfeo in ein 3CX-lesbares Format konvertiert.