Zum Inhalt wechseln


Foto

SBS2011: WSUS Serverbereinigung läuft nicht durch

WSUS

  • Bitte melde dich an um zu Antworten
47 Antworten in diesem Thema

#31 Bumbum

Bumbum

    Member

  • 347 Beiträge

 

Geschrieben 28. August 2014 - 15:48

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



#32 Sunny61

Sunny61

    Expert Member

  • 22.085 Beiträge

 

Geschrieben 28. August 2014 - 18:43

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/a...ternal_database Hast Du das alles genauso eingestellt?
Gruppenrichtlinien: http://www.gruppenrichtlinien.de/

#33 ente_0815

ente_0815

    Newbie

  • 11 Beiträge

 

Geschrieben 29. August 2014 - 08:25

Genau, du musst also "\\.\pipe\mssql$microsoft##ssee\sql\query" als Datenbank angeben, nicht einen der vorgegebenen Dienste.



#34 Bumbum

Bumbum

    Member

  • 347 Beiträge

 

Geschrieben 30. August 2014 - 14:55

Hallo Sunny, hallo Newbie,

 

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.

 

Viele Grüße

Andreas



#35 Sunny61

Sunny61

    Expert Member

  • 22.085 Beiträge

 

Geschrieben 30. August 2014 - 16:26

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. ;)
Gruppenrichtlinien: http://www.gruppenrichtlinien.de/

#36 Bumbum

Bumbum

    Member

  • 347 Beiträge

 

Geschrieben 31. August 2014 - 07:10

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



#37 Sunny61

Sunny61

    Expert Member

  • 22.085 Beiträge

 

Geschrieben 31. August 2014 - 08:25

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


Ich glaube du kommst schneller zum Ziel, wenn Du diesen Vorschlag ausführst: http://www.mcseboard...-2#entry1242044
Gruppenrichtlinien: http://www.gruppenrichtlinien.de/

#38 ente_0815

ente_0815

    Newbie

  • 11 Beiträge

 

Geschrieben 31. August 2014 - 12:50

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://expressprofil...ses/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



#39 Bumbum

Bumbum

    Member

  • 347 Beiträge

 

Geschrieben 31. August 2014 - 14:44

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



#40 Sunny61

Sunny61

    Expert Member

  • 22.085 Beiträge

 

Geschrieben 31. August 2014 - 15:12

Wenn die automatische Bereinigung einmal sauber durchgelaufen ist, und Du sie anschließend regelmässig per Script ausführen lässt, sollte sich das Timeout nicht mehr blicken lassen.


Gruppenrichtlinien: http://www.gruppenrichtlinien.de/

#41 Bumbum

Bumbum

    Member

  • 347 Beiträge

 

Geschrieben 31. August 2014 - 20:52

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



#42 Dukel

Dukel

    Board Veteran

  • 9.240 Beiträge

 

Geschrieben 01. September 2014 - 08:47

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


Stop making stupid people famous.


#43 ente_0815

ente_0815

    Newbie

  • 11 Beiträge

 

Geschrieben 02. September 2014 - 12:41

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



#44 FlexM3

FlexM3

    Newbie

  • 20 Beiträge

 

Geschrieben 08. Februar 2016 - 13:23

 

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.



#45 Sunny61

Sunny61

    Expert Member

  • 22.085 Beiträge

 

Geschrieben 08. Februar 2016 - 13:40

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.
Gruppenrichtlinien: http://www.gruppenrichtlinien.de/