Jump to content

SBS2011: WSUS Serverbereinigung läuft nicht durch


Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Empfohlene Beiträge

Hallo,

 

ich wollte das gerade probieren, kann mich aber nicht mit der Datenbank im SQL Server Manager Studio verbinden. Folgende Fehlermeldung kommt:

 

TITEL: Verbindung mit Server herstellen
------------------------------

Es kann keine Verbindung mit 'SERVER1\MICROSOFT##SSEE' hergestellt werden.

------------------------------
ZUSÄTZLICHE INFORMATIONEN:

Netzwerkbezogener oder instanzspezifischer Fehler beim Herstellen einer Verbindung mit SQL Server. Der Server wurde nicht gefunden, oder auf ihn kann nicht zugegriffen werden. Überprüfen Sie, ob der Instanzname richtig ist und ob SQL Server Remoteverbindungen zulässt. (provider: SQL-Netzwerkschnittstellen, error: 26 - Fehler beim Bestimmen des angegebenen Servers/der angegebenen Instanz) (Microsoft SQL Server, Fehler: -1)
 

Folgende Ursachen werden auf der Microsoft-Hilfeseite zum Fehler angezeigt:

 

  • A specified SQL Server instance name is not valid.

  • The TCP, or named pipes protocols are not enabled.

  • The firewall on the server has refused the connection.

  • The SQL Server Browser service (sqlbrowser) is not started.

 

Den ersten Punkt kann ich wohl ausschließen, da ich die Datenbank aus der Dropdown-Liste gewählt habe.

Zum zweiten und dritten Punkt bräuchte ich Hilfe, wie ich das überprüfen kann

Den vierten Punkt habe ich überprüft, der Dienst läuft.

 

Viele Grüße

Andreas

Link zu diesem Kommentar

ich wollte das gerade probieren, kann mich aber nicht mit der Datenbank im SQL Server Manager Studio verbinden. Folgende Fehlermeldung kommt:

 

TITEL: Verbindung mit Server herstellen

------------------------------

 

Es kann keine Verbindung mit 'SERVER1\MICROSOFT##SSEE' hergestellt werden.

 

------------------------------

ZUSÄTZLICHE INFORMATIONEN:

 

Probierst Du das direkt auf dem Server? Wenn ja, schau dir das zweite Bild in diesem Artikel an: http://www.wsus.de/ausfuehren_eines_scripts_auf_der_windows_internal_database Hast Du das alles genauso eingestellt?

Link zu diesem Kommentar

vielen Dank, das wars. Ich habe jetzt erst mal den Timeout von 600 auf 1200 Sekunden erhöht. Mal schauen, ob die Bereinigung damit durchläuft. Ansonsten werde ich erst mal schrittweise erhöhen. Ganz abschalten kommt dann am Schluß, wenn es nicht klappen sollte.

 

Lass sie am besten mehrmals und regelmässig als Script laufen. Das kann nicht schaden hilft vermeiden was dir jetzt passiert ist. ;)

Link zu diesem Kommentar

Erst mal den Timeout herausfinden. mit 1200 Sekudnen ging es nicht. Nächster Versuch: 2400 Sekunden...

 

Wenn du dir mit den im o.g. Beitrag die Anzahl der "obsolete Updates" ausgeben lässt, kannst du ja nachverfolgen ob er im Prozess mittlerweile weitergekommen ist und immernoch genausoviele Updates übrig sind.

 

Wenn du einen SQL-Trace auf die SUSDB machst, z.B. mit dem einfachen Tool ExpressProfiler: http://expressprofiler.codeplex.com/releases/view/111894 , dann kannst du sogar genau sehen, dass bei einem Zugriff namens "DeleteUpdate - UpdateID" diverse Zeit verstreicht und letztendlich in einen Timeout läuft. Das ist dann auch genau das Update, was per SQL-Abfrage der "obsolete Updates" ganz oben steht.

 

LG

Link zu diesem Kommentar

Hallo,

 

das Thema ist jetzt so lange offen, da kommt es auf ein paar Tage rauf oder runter zum "spielen" und herausfinden des Timeout auch nicht mehr an. Was mir an der Lösung mit dem manuellen löschen der Updates nicht gefältt, ist dass Sie Manuell ist. Wenn ich einen genügend hohen Timeout ermittelt habe, kann ich die Bereinigung in Zukunft automatisch planen und durchführen lassen. Und das ohne noch mal Hand anlegen zu müssen.

 

Viele Grüße

Andreas

Link zu diesem Kommentar

Hallo,

 

das hochschrauben des Timeout bringt wohl nichts, wie ich gerade bemerkt habe.Ich bin mittlerweile bei 9600 Sekunden. Trotzdem kommt die Fehlermeldung nach knapp einer Stunde. Ich habe jetzt mal etwas die Ereignisanzeige überprüft. Der Timeout wird bereits ca. 2 Minuten nach dem Start der Serverbereinigung gelistet. Es muss sich also um einen anderen Timeout wie den der Verbindungsdauer handeln, da dort der Standard-Wert mit 600 Sekunden ja bereits 10 Minuten sind.

 

Ich bin gerade am überlegen den Timeout zu deaktivieren und dann zu schauen, ob es durchläuft. Wenn es stimmt was Sunny geschrieben hat sollte ich nach einmaligem Erfolg den Timeout wieder setzen können.

 

Viele Grüße

Andreas

Link zu diesem Kommentar

Mit folgendem Script kann man alle zu löschenden Updates aus der DB manuell löschen:

 

 

USE SUSDB

GO

CREATE TABLE #updates (id int primary key);
INSERT #updates
exec spGetObsoleteUpdatesToCleanup

DECLARE @id INT
DECLARE @getid CURSOR

SET @getid = CURSOR FOR
SELECT id
FROM   #updates

OPEN @getid
FETCH NEXT
FROM @getid INTO @id
WHILE @@FETCH_STATUS = 0
BEGIN
    EXEC spDeleteUpdate @localUpdateID=@id
    FETCH NEXT
    FROM @getid INTO @id
END

CLOSE @getid
DEALLOCATE @getid

Link zu diesem Kommentar

Hallo,

 

das hochschrauben des Timeout bringt wohl nichts, wie ich gerade bemerkt habe.Ich bin mittlerweile bei 9600 Sekunden. Trotzdem kommt die Fehlermeldung nach knapp einer Stunde. Ich habe jetzt mal etwas die Ereignisanzeige überprüft. Der Timeout wird bereits ca. 2 Minuten nach dem Start der Serverbereinigung gelistet. Es muss sich also um einen anderen Timeout wie den der Verbindungsdauer handeln, da dort der Standard-Wert mit 600 Sekunden ja bereits 10 Minuten sind.

 

Ich bin gerade am überlegen den Timeout zu deaktivieren und dann zu schauen, ob es durchläuft. Wenn es stimmt was Sunny geschrieben hat sollte ich nach einmaligem Erfolg den Timeout wieder setzen können.

 

Viele Grüße

Andreas

 

Genau, probier das mal. Andernfalls lösche das Update, bei dem der Timeout auftritt einfach manuell.

 

Gruß,

Ente

Link zu diesem Kommentar
  • 1 Jahr später...

 

Edit:

Oder halt alternativ und 1000 mal einfacher...

 

1. Rechtsklick auf
\\.\pipe\mssql$microsoft##ssee\sql\query
links im Baum (oberstes Element).
2. Wähle "Eigenschaften".
3. Wähle "Verbindungen".
4. Setze "Timeout für Remoteabfragen" auf 0 (= kein Timeout).

 

======================================================================

Letztendlich ist die einfache Lösung die erstgenannte. Das unterhalb lasse ich dennoch stehen, da es einen tieferen Einblick gibt und sich eventuell jemand damit auseinandersetzen möchte. Die investierte Zeit in die u.g. Lösung ist aber irgendwie schade...

======================================================================

 

Hi, du hast ja schon einmal auf so einen Beitrag verwiesen. Ich habe es ausprobiert und erfolgreich abgeschlossen. Deine Aussage, dass man jedes Update manuell löschen muss, ist jedoch nicht korrekt. Es sind nur gewisse Updates, die den Timeout verursachen. Den Rest macht die Serverbereinigung selbst.

Habe selbes auch auf Bents-Blog gepostet - der wurde von dir ja auch schon verlinkt.

 
---------------------------------------------------------------
Lösung für das Timeout-Problem bei WSUS3.0. 
---------------------------------------------------------------
Ich setze SBS2011 ein, ist aber mit Sicherheit auch bei anderen Systemen so.
 
Ursprung des Problems: Keine regelmäßige Wartung der WSUS-Datenbank (SUSDB)
Problem für den Timout: Leistung des Servers (v.a. bei SBS ein Problem, mit Exchange usw.)
Lösung:
1. Maintenance-Script von oben auf dem Server ausführen.
 
2. Serverbereinigung testen, dabei erstmal alle Punkte einzeln ausführen und beobachten, bei welchem Punkt der Timeout auftritt. Das ist vermutlich der oberste Punkt.
 
3. SQL-Server-Manager starten und mit der Datenbank verbinden:
---------------------------------------------------------------
\\.\pipe\mssql$microsoft##ssee\sql\query
---------------------------------------------------------------
 
4. Rechtsklick auf
\\.\pipe\mssql$microsoft##ssee\sql\query
links im Baum (oberstes Element). Wähle "Neue Abfrage".
 
5. Die nicht weiter benötigten Updates abfragen mit
---------------------------------------------------------------
USE SUSDB
GO
exec spGetObsoleteUpdatesToCleanup
---------------------------------------------------------------
 
6. In der Ergebnisliste stehen die Updates mit "LocalUpdateID". Man nehme die erste ID und "löscht" das Update mit dem Kommando
---------------------------------------------------------------
USE SUSDB
GO
exec spDeleteUpdate @localUpdateID=######
---------------------------------------------------------------
wobei ###### natürlich für die "LocalUpdateID" steht. Man kann ebenfalls mehrere Updates "löschen" indem man mehrere Spalten angibt, z.B.
---------------------------------------------------------------
USE SUSDB
GO
exec spDeleteUpdate @localUpdateID=######
exec spDeleteUpdate @localUpdateID=######
exec spDeleteUpdate @localUpdateID=######
---------------------------------------------------------------
 
7. Der Befehl wird dann erfolgreich ausgeführt und man kann die Serverbereinigung erneut testen. 
 
TIPP: Notiert euch am besten die Gesamtzahl der mit unter Punkt 5. aufgelisteten Updates. Falls die Serverbereinigung erneut fehlschlägt, wiederholt das Vorgehen mit dem manuellen Löschen des obersten Updates. Hier solltet ihr feststellen, dass sich die Gesamtzahl der Updates auch durch die Ausführung der Serverbereinigung verringert, nicht nur durch eure manuellen Löschvorgänge!
 
Wer des Englischen mächtig ist, liest einfach noch das hier, da steht das Gleiche:
 
Wenn ihr die Serverbereinigung soweit habt, dass sie überhaupt sichtbar anfängt, ihr also einen kleinen blauen Balken seht, dann dürft ihr euch zurücklehnen und das Ding laufen lassen. Auch wenn ich keine Erklärung dafür habe, sobald ich etwas blaues gesehen habe, gab es bei meinen (ingesamt 7 WSUS)  Maschinen keinen Timeout mehr. Meine Minimumzeiten für etwa 6000 "obsolete Updates" liegen bei 23 Stunden, meine Maximalzeiten bei 46 Stunden.
 
Grüße

 

 

Mir hat dieser Beitrag sehr weitergeholfen. Nachdem ca. 5 Jahre keine Serverbereinigung durchgeführt wurde, hatte ich zunächst das mit dem Timeout auf 0 versucht, das hat allerdings nur das Timeout Problem nach hinten verschoben.

 

Ich habe dann das Maintenance Script laufen lassen und dann der Anleitung von Punkt 1 bis zum Schluss gefolgt. Allerdings ist bei mir auch das Timeoutproblem aufgetreten, nachdem schon ein blauer Fortschrittsbalken zu sehen war. Ich habe dann immer wieder manuell das oberste Update gelöscht und dann auf's Neue. Nach ca. 5 erneuten Timeouts hat es letztendlich dann geklappt. Zum Schluss hin ging es immer schneller als sich der blaue Fortschrittsbalken aufgebaut hatte. Insgesamt habe ich mich aber ca. eine Woche damit rumgeschlagen. Jetzt ist's aber sauber durchgelaufen und darüber bin ich sehr glücklich und möchte mich für diesen super Tipp bedanken, genau das war die Lösung bei mir.

 

Ich hatte zudem noch festgestellt, dass man Rechen- und Festplattenintensive Aufgaben (wie z. B. Backups) abstellen sollte, das kann auch zu Timeouts führen.

 

Vielleicht hilft dem ein oder anderen noch meine Info weiter.

Link zu diesem Kommentar

Mir hat dieser Beitrag sehr weitergeholfen. Nachdem ca. 5 Jahre keine Serverbereinigung durchgeführt wurde, hatte ich zunächst das mit dem Timeout auf 0 versucht, das hat allerdings nur das Timeout Problem nach hinten verschoben.

Freut mich für dich und Danke für die Rückmeldung. ;)

 

Zusätzlich solltest Du das Cleanup Script täglich im Taskplaner auf dem SBS laufen lassen und das ReIndex Script wöchentlich, dann bist Du auf der sicheren Seite.

Link zu diesem Kommentar
Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Schreibe einen Kommentar

Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor-Fenster leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...