SQL Server 2005-Konnektivität und Volumeschattenkopie-Dienst (VSS)

Gilt für: Microsoft SQL Server 2005 Standard EditionMicrosoft SQL Server 2005 Enterprise EditionMicrosoft SQL Server 2005 Developer Edition

SQL Server-Support-sprach Spalte


SQL Server 2005-Konnektivität und Volumeschattenkopie-Dienst

Um diese Spalte an Ihre Anforderungen anzupassen, möchten wir Sie einladen, Ihre Ideen zu Themen, die Sie interessieren, und Probleme, die Sie in zukünftigen Knowledge Base-Artikeln und unterstützen von Voice-Kolumnen angesprochen sehen möchten, einzureichen. Sie können Ihre Ideen und Ihr Feedback über das Formular " Ask for IT " einreichen. Es gibt auch einen Link zu dem Formular am Ende dieser Spalte.
Willkommen zurück! Ich bin Sandy Yakob mit dem Microsoft SQL Server-INHALTSTEAM. Ich bin Ihre Hostess für die SQL Server-Support-Sprachspalten. Eine kurze Notiz über mich: Ich bin seit 14 Jahren bei Microsoft. In den letzten drei Jahren habe ich mit dem SQL Server-INHALTSTEAM zusammengearbeitet. In diesem Monat wird Suresh Kandoth die Microsoft SQL Server 2005-Konnektivität und den Volumeschattenkopie-Dienst (Volume Shadow Copy Service, VSS) adressieren. Suresh ist ein Escalation Engineer mit dem SQL Server-Support Team. In den letzten vier Jahren war er bei Microsoft und arbeitete an SQL Server-Technologien. Ich hoffe, dass Ihnen die Kolumne gefällt und Sie hilfreich finden.

SQL Server 2005-Konnektivität und VSS

In diesem Artikel werden SQL Server-Verbindungsprobleme erörtert, die bei Verwendung von VSS-aktivierten Backup-Anwendungen (Volume Shadow Copy Service) auftreten können.

Hintergrundinformationen

Bevor wir in die Details der Fehler und Probleme eingehen, untersuchen wir die verschiedenen Komponenten, die an dieser Diskussion beteiligt sind.
  • VSS VSS ist ein Framework, das aus einer Reihe von Schnittstellen und Strukturen besteht, die Anwendungen das Durchführen von Backups von Volumes ermöglichen, während andere Anwendungen die Daten in diesen Volumes verwenden. VSS ist im Lieferumfang von Microsoft Windows XP und Microsoft Windows Server 2003 enthalten.
  • Backup-AnwendungenBei einer Sicherungsanwendung handelt es sich um eine Windows-Anwendung, die eine Snapshot-Sicherung anfordert, die mithilfe von VSS ausgeführt wird. Die Windows NT-Sicherungsanwendung, die im Lieferumfang von Windows enthalten ist, ist beispielsweise eine Sicherungsanwendung.
  • AutorenAutoren sind Anwendungen oder Dienste, die persistente Informationen auf dem Datenträgerspeichern und die mit Anbietern und anfordernden über die Schatten Kopier Schnittstelle zusammenarbeiten. In diesem Artikel werden wir den MSDEWriter-Writer und den SqlServerWriter-Writer besprechen.
    • MSDEWriter: der MSDEWriter-Writer ist ein VSS-Writer für SQL Server. MSDEWriter ist im VSS-Framework unter Windows XP und Windows Server 2003 enthalten. MSDEWriter arbeitet mit SQL Server 7,0, SQL Server 2000 und SQL Server 2005.
    • SqlServerWriter: der SqlServerWriter-Writer ist ein VSS-Writer für SQL Server. SqlServerWriter ist im Lieferumfang von SQL Server 2005 enthalten. SqlServerWriter funktioniert nur mit Instanzen von SQL Server 2005.

Verbindungen mit SQL Server

Sie Fragen sich vielleicht, warum VSS-Framework-Komponenten eine Verbindung mit SQL Server herstellen müssen, wenn die Komponenten nur eine Sicherung des Volumes durchführen. In den anfänglichen Phasen der Snapshot-Erstellung stellt der konfigurierte Standard Schreiber eine Verbindung mit den Instanzen von SQL Server auf dem jeweiligen Server her. Eine der ersten Phasen eines Snapshot-Erstellungsprozesses ist "Backup-Initialisierung". In dieser Phase führt die Sicherungsanwendung (Requestor) die folgenden Aktionen aus, um sicherzustellen, dass alle Komponenten im Snapshot-Erstellungsprozess bereit sind:
  • Die Sicherungsanwendung bindet an die IVssBackupComponents -Schnittstelle.
  • Die Backup-Anwendung initialisiert die IVssBackupComponents-Schnittstelle.
  • Die Backup-Anwendung ruft die IVssGatherWriterMetadata -API auf, um eine Metadatenliste durchzuführen.
Das VSS-Framework weist dann alle Writer an, Metadaten zu sammeln. Dazu gehört ein Standard Schreiber, der in SQL Server enthalten ist. Basierend auf den aktuellen Einstellungen des Servers kann es sich entweder um MSDEWriter oder SqlServerWriter handeln. Dieser Standard Schreiber für SQL Server stellt eine Verbindung mit allen Instanzen von SQL Server her, die auf dem lokalen System gestartet werden, ruft die erforderlichen Informationen zu den Datenbanken auf der Instanz von SQL Server ab und erstellt dann das metadatenprogramm. Das Metadaten-Dokument wird dann an die Sicherungsanwendung zurückgegeben.

Identifizieren des Writers

Entweder MSDEWriter oder SqlServerWriter führt die Metadaten-Enumeration aus. Daher muss entweder MSDEWriter oder SqlServerWriter mit der Instanz von SQL Server verbunden werden. Verwenden Sie die folgenden Informationen, um zu bestimmen, welcher Writer standardmäßig als Writer für die Instanz von SQL Server konfiguriert ist.
SQL Server-VersionRegistrierungsschlüssel MSDEVersionChecking = 0 [oder abwesend]Registrierungsschlüssel MSDEVersionChecking #a0 0
7.0Metadaten-Enumeration erfolgt durch MSDEWriterMetadaten-Enumeration erfolgt durch MSDEWriter
2000Metadaten-Enumeration erfolgt durch MSDEWriterMetadaten-Enumeration erfolgt durch MSDEWriter
2005Metadaten-Enumeration erfolgt durch MSDEWriterMetadaten-Enumeration erfolgt durch SqlServerWriter
Der MSDEVersionChecking-Wert befindet sich im Registrierungsschlüssel HKEY_LOCAL_MACHINE \system\currentcontrolset\services\vss\settings . Hierbei handelt es sich um einen DWORD-Wert, der möglicherweise nur dann vorhanden ist, wenn Sie ihn manuell erstellen. Obwohl SqlServerWriter mit SQL Server 2005 installiert ist, ist es nicht als Standard Schreiber für SQL Server 2005 konfiguriert. Sie müssen SqlServerWriter manuell als Standard Schreiber konfigurieren. Weitere Informationen finden Sie auf der folgenden Microsoft-Website: Wenn Sie Verbindungsprobleme vom Writer zur Instanz von SQL Server beheben, müssen Sie sich mit den folgenden wichtigen Informationen vertraut machen:
  • Wenn MSDEWriter versucht, eine Verbindung herzustellen, fungiert VSS für diesen spezifischen Verbindungsversuch als Client für SQL Server.
  • Wenn SqlServerWriter versucht, eine Verbindung herzustellen, fungiert der SQL Server VSS Writer-Dienst als Client für SQL Server für diesen spezifischen Verbindungsversuch.

Probleme, wenn der Writer versucht, eine Verbindung mit SQL Server herzustellen

Die folgenden beiden Probleme können auftreten, wenn der Standard Schreiber versucht, eine Verbindung mit den Instanzen von SQL Server auf dem Computer herzustellen:
  • Der Writer kann mit der Instanz von SQL Server keine erfolgreiche Authentifizierung durchführen.
  • Der Writer kann keine erfolgreiche Verbindung mit der Instanz von SQL Server herstellen.
Die Symptome, die Sie bei der Verwendung einer Sicherungsanwendung feststellen, variieren je nach Problem. Bei Authentifizierungsproblemen kann der Writer keine Metadatenliste durchführen und einen unmittelbaren Fehler im Windows-Ereignisprotokoll und den konfigurierten Ablaufverfolgungsprotokollen für den Writer erzeugen. Bei Verbindungsproblemen reagiert die Sicherungsanwendung während der Initialisierungsphase über einen längeren Zeitraum nicht mehr. Nachdem die Anwendung nicht mehr reagiert hat, werden die Einträge im Windows-Ereignisprotokoll und den konfigurierten Ablaufverfolgungsprotokollen für den Writer protokolliert.

Authentifizierungsprobleme

Wenn der VSS-Dienst und der sqlwriterdienst installiert sind, ist das Dienststartkonto als lokales System [NT AUTHORITY\SYSTEM] konfiguriert. Wenn der Writer versucht, eine Verbindung mit Instanzen von SQL Server herzustellen, verwendet der Writer die Anmeldeinformationen des lokalen System-Startkontos [NT AUTHORITY\SYSTEM]. Sie müssen sicherstellen, dass die Instanzen von SQL Server den Zugriff auf dieses Windows-Konto entweder explizit oder über die Gruppenmitgliedschaft von BUILTIN\Administrators.if-Authentifizierungsproblemen gewährt haben, werden die folgenden Nachrichten im Windows-Ereignisprotokoll protokolliert.
Meldung 1
Ereignistyp: ErrorEvent Quellcode: SQLWRITEREvent Category: NoneEvent ID: 24583Date: 4/30/2006 Zeit: 11:38:44 amüsant: N/AComputer:ComputernameBeschreibung: Sqllib-Fehler: OLEDB-Fehler beim Aufrufen von IDBInitialize:: Initialize. HR = 0x80040E4D. SQLSTATE: 28000, systemeigener Fehler: 18456Error-Status: 1; Schweregrad: 14Source: Microsoft SQL Native ClientError-Meldung: Fehler bei der Anmeldung für den Benutzer "NT-AUTHORITY\SYSTEM". DBPROP_INIT_DATASOURCE: ComputernameDBPROP_INIT_CATALOG: masterDBPROP_AUTH_INTEGRATED: SSPI
Meldung 2
Ereignistyp: ErrorEvent Quellcode: SQLWRITEREvent Category: NoneEvent ID: 24583Date: 4/30/2006 Zeit: 11:38:44 amüsant: N/AComputer:ComputernameBeschreibung: Sqllib-Fehler: OLEDB-Fehler beim Aufrufen von IDBInitialize:: Initialize. HR = 0x80040E4D. SQLSTATE: 28000, systemeigener Fehler: 18456Error-Status: 1; Schweregrad: 14Source: Microsoft SQL Native ClientError-Meldung: Fehler bei der Anmeldung für den Benutzer "NT-AUTHORITY\SYSTEM". DBPROP_INIT_DATASOURCE: ComputernameDBPROP_INIT_CATALOG: masterDBPROP_AUTH_INTEGRATED: SSPI
Fehlermeldung 3
Wenn Sie SQL Server VSS Writer verwenden, um eine Sicherungskopie zu erstellen, kann die folgende Fehlermeldung auftreten:
Log Name: ApplicationSource: SQLWRITEREvent ID: 24581Task Category: NoneLevel: ErrorDescription: Sqllib Fehler: System Tabelle sys. sysdatabases in SQL Server-Instanz <SQL Server-Name> ist leer. Wenn das lokale System Konto keine Datenbank oder keine Berechtigung für Datenbankserver Ebene oder Datenbankberechtigung in der Master Datenbank enthält, tritt obiger Fehler auf, da er nicht in der Lage ist, die sys. databases-Katalogsicht abzufragen. Die db_datareader Rechte reichen nicht aus, um diesen Vorgang erfolgreich durchführen zu können.
Für diesen Vorgang muss das Konto des lokalen Systems (NT Authority/System) eine der folgenden Aktionen aufweisen:
  • Ändern der Berechtigungen einer Datenbankserver Ebene
  • Anzeigen einer Berechtigung für Datenbankserver Ebene
  • CREATE DATABASE-Berechtigung in der Master-Datenbank
Fehlermeldung 4
Ereignistyp: ErrorEvent Quellcode: VSSEvent Category: NoneEvent ID: 6013Date: 4/30/2006 Zeit: 11:38:44 amüsant: N/AComputer:ComputernameBeschreibung: Sqllib-Fehler: OLEDB-Fehler beim Aufrufen von IDBInitialize:: Initialize. HR = 0x80040E4D. SQLSTATE: 42000, systemeigener Fehler: 18456Error-Status: 1; Schweregrad: 14Source: Microsoft OLE DB-Anbieter für SQL ServerError Meldung: Fehler bei der Anmeldung für den Benutzer "NT-AUTHORITY\SYSTEM".
Sie können den Writer, der das Problem aufgetreten ist, mithilfe der Ereignisquelle eindeutig identifizieren. Der erste Fehler ist von SqlServerWriter. Der zweite Fehler ist von MSDEWriter. Wenn Sie eine SQL Profiler-Ablaufverfolgung ausführen und das Ereignis Protokollierungs Fehler überwachen in der Ablaufverfolgung enthalten ist, werden die folgenden Informationen für das Ereignis erfasst.
SQL Server 2005
SQL Server 2000
Sie können den Writer, der versucht, die Verbindung herzustellen, mithilfe der Client Prozess-ID eindeutig identifizieren. Aufgrund der strengen Sicherheitsanforderungen haben SQL Server-Installationen die VORDEFINIERT\Administratoren-Gruppe möglicherweise aus den SQL Server-Anmeldungen entfernt. Wenn dieses Problem auftritt, müssen Sie sicherstellen, dass dem NT-AUTHORITY\SYSTEM-Konto Zugriff auf SQL Server gewährt wird. Dazu müssen Sie Sie als explizite Anmeldung hinzufügen. Aufgrund der Vorgangstypen, die der Writer ausführen muss, empfehlen wir außerdem, dass Sie die NT-AUTHORITY\SYSTEM-Anmeldung nicht aus der sysadmin-Serverrolle entfernen. Auch wenn sich der MSDEWriter-Writer und der SqlServerWriter-Writer erfolgreich bei SQL Server anmelden können, wird möglicherweise die folgende Fehlermeldung angezeigt, wenn unzureichende Berechtigungen zum Abfragen der Systemtabellen oder der Katalogsichten vorhanden sind, die die Informationen zu den Datenbanken und Dateien enthalten, die zu der Datenbank gehören:
Ereignistyp: ErrorEvent Quellcode: VSSEvent Category: NoneEvent ID: 6013Date: 9/4/2006 Zeit: 9:09:43 PMUser: N/AComputer: ComputernameDescription: Sqllib-Fehler: OLEDB-Fehler beim Aufrufen von ICommandText:: Execute. HR = 0x80040e09. SQLSTATE: 42000, systemeigener Fehler: 229 Fehlerzustand: 5, Schweregrad: 14Source: Microsoft OLE DB-Anbieter für SQL ServerError Meldung: Wählen Sie Berechtigung verweigert für das Objekt "sysaltfiles", Datenbank "Master", Besitzer "dbo" aus.
Um diese Fehlermeldung zu vermeiden, stellen Sie sicher, dass Sie dem Konto in SQL Server die richtigen Berechtigungen zuweisen. Fügen Sie dieses Konto beispielsweise der db_datareader -Datenbankrolle in der Master Datenbank hinzu.

Verbindungsprobleme

Diese Art von Problem tritt auf, wenn der Writer keine SQL-Verbindung mit den Instanzen von SQL Server herstellen kann. Der zugewiesene Writer versucht, eine Verbindung mit einer bestimmten Instanz von SQL Server herzustellen, die derzeit ausgeführt wird. Wenn ein Problem beim Herstellen einer Verbindung auftritt, werden die folgenden Fehlermeldungen im Windows-Ereignisprotokoll protokolliert.
Meldung 1
Ereignistyp: ErrorEvent Quellcode: SQLWRITEREvent Category: NoneEvent ID: 24583Date: 4/30/2006 Zeit: 12:11:06 PMUser: N/AComputer:ComputernameBeschreibung: Sqllib-Fehler: OLEDB-Fehler beim Aufrufen von IDBInitialize:: Initialize. HR = 0x80004005. SQLSTATE: HYT00, systemeigener Fehler: 0Source: Microsoft SQL Native ClientError-Meldung: Anmeldetimeout abgelaufen SQLSTATE: 08001, systemeigener Fehler: 2Source: Microsoft SQL Native ClientError-Meldung: beim Herstellen einer Verbindung mit dem Server ist ein Fehler aufgetreten. Dieser Fehler kann beim Herstellen einer Verbindung mit SQL Server 2005 durch die Tatsache verursacht werden, dass SQL Server unter den Standardeinstellungen keine Remoteverbindungen zulässt. SQLSTATE: 08001, systemeigener Fehler: 2 Fehlerzustand: 1, Schweregrad: 16Source: Microsoft SQL Native ClientError Nachricht: Named Pipes-Anbieter: eine Verbindung mit SQL Server konnte nicht geöffnet werden [2]. DBPROP_INIT_DATASOURCE: ComputernameDBPROP_INIT_CATALOG: masterDBPROP_AUTH_INTEGRATED: SSPI
Meldung 2
Ereignistyp: ErrorEvent Quellcode: SQLWRITEREvent Category: NoneEvent ID: 24583Date: 4/30/2006 Zeit: 12:52:40 PMUser: N/AComputer:ComputernameBeschreibung: Sqllib-Fehler: OLEDB-Fehler beim Aufrufen von IDBInitialize:: Initialize. HR = 0x80004005. SQLSTATE: HYT00, systemeigener Fehler: 0Source: Microsoft SQL Native ClientError-Meldung: Anmeldetimeout abgelaufen SQLSTATE: 08001, systemeigener Fehler: 10061Source: Microsoft SQL Native ClientError-Meldung: beim Herstellen einer Verbindung mit dem Server ist ein Fehler aufgetreten. Dieser Fehler kann beim Herstellen einer Verbindung mit SQL Server 2005 durch die Tatsache verursacht werden, dass SQL Server unter den Standardeinstellungen keine Remoteverbindungen zulässt. SQLSTATE: 08001, systemeigener Fehler: 10061 Fehlerzustand: 1, Schweregrad: 16Source: Microsoft SQL Native ClientError Nachricht: TCP-Anbieter: Es konnte keine Verbindung hergestellt werden, da der Zielcomputer diese aktiv abgelehnt hat. DBPROP_INIT_DATASOURCE: ComputernameDBPROP_INIT_CATALOG: masterDBPROP_AUTH_INTEGRATED: SSPI
Fehlermeldung 3
Ereignistyp: ErrorEvent Quellcode: SQLWRITEREvent Category: NoneEvent ID: 24583Date: 4/30/2006 Zeit: 4:52:34 PMUser: N/AComputer:ComputernameBeschreibung: Sqllib-Fehler: OLEDB-Fehler beim Aufrufen von IDBInitialize:: Initialize. HR = 0x80004005. SQLSTATE: HYT00, systemeigener Fehler: 0Source: Microsoft SQL Native ClientError-Meldung: Anmeldetimeout abgelaufen SQLSTATE: 08001, systemeigener Fehler: 2Source: Microsoft SQL Native ClientError-Meldung: beim Herstellen einer Verbindung mit dem Server ist ein Fehler aufgetreten. Dieser Fehler kann beim Herstellen einer Verbindung mit SQL Server 2005 durch die Tatsache verursacht werden, dass SQL Server unter den Standardeinstellungen keine Remoteverbindungen zulässt. SQLSTATE: 08001, systemeigener Fehler: 2 Fehlerzustand: 1, Schweregrad: 16Source: Microsoft SQL Native ClientError Nachricht: Shared Memory Provider: eine Verbindung mit SQL Server konnte nicht geöffnet werden [2]. DBPROP_INIT_DATASOURCE: ComputernameDBPROP_INIT_CATALOG: masterDBPROP_AUTH_INTEGRATED: SSPI
Fehlermeldung 4
Ereignistyp: ErrorEvent Quellcode: VSSEvent Category: NoneEvent ID: 6013Date: 4/30/2006 Zeit: 12:11:06 PMUser: N/AComputer:ComputernameBeschreibung: Sqllib-Fehler: OLEDB-Fehler beim Aufrufen von IDBInitialize:: Initialize. HR = 0x80004005. SQLSTATE: 08001, Fehler: 17 Fehlerzustand: 1, Schweregrad: 16Source: Microsoft OLE DB-Anbieter für SQL ServerError Nachricht: [DBNETLIB] [ConnectionOpen (Connect ()).] SQL Server ist nicht vorhanden oder Zugriff verweigert.
Achten Sie in den vorherigen Fehlermeldungen auf den Writer, das Protokoll, das für die Verbindung verwendet wird, und die Fehlermeldung, die zurückgegeben wird. Diese Fehler werden nicht in der SQL Profiler-Ablaufverfolgung für die Überwachungs Anmelde Ereignisse protokolliert. Diese Arten von Verbindungsproblemen können aus folgenden Gründen auftreten:
  • Aliase auf dem Computer sind mit falschen Informationen konfiguriert.
  • Es gibt kein gemeinsames Protokoll, das der Client verwendet, um eine Verbindung herzustellen, und der Server überwacht.
  • Die Microsoft Data Access Components-Konfiguration (MDAC) oder die SQL Native Access-Client-Konfiguration (SNAC) auf dem Computer wurden geändert.
  • Bekannte Protokollprobleme bestehen auf bestimmten Plattformen oder Editionen von SQL Server.
Weitere Informationen zu Connection proglems finden Sie auf der folgenden Website:

Isolieren von Verbindungsproblemen

Wenn eines dieser Probleme auftritt und Sie weitere Informationen erhalten möchten, müssen Sie die Sicherungsanwendung nicht wiederholt ausführen. Sie können das VSS-Verwaltungs Befehlszeilentool (vssadmin. exe) verwenden. Wenn Sie sicherstellen möchten, dass Sie dieselben Anmeldeinformationen und Einstellungen wie VSS verwenden, führen Sie die folgenden Schritte aus, um die Simulationsübungen auszuführen. Hinweis Mit den folgenden Schritten können Sie eine Eingabeaufforderung mit den Anmeldeinformationen des NT-AUTHORITY\SYSTEM-Kontos öffnen. Die Autoren verwenden auch das NT-AUTHORITY\SYSTEM-Konto.
  1. Stellen Sie sicher, dass der Aufgabenplanungsdienst gestartet wurde.
  2. Wenn Sie eine Terminal Dienstverbindung oder eine Remote Desktop Verbindung verwenden, stellen Sie sicher, dass Sie sich bei der Konsolensitzung anmelden.
  3. Geben Sie an der Eingabeaufforderung den folgenden Befehl ein:
    bei 14:05/Interactive cmd. exe
    Hinweis Stellen Sie sicher, dass die Zeit, die Sie in diesem Befehl angeben, vor der aktuellen Systemzeit auf dem Computer liegt. Wenn die angegebene Uhrzeit erreicht ist, wird eine neue Eingabeaufforderung angezeigt. Sie sieht wie folgt aus:
    C:\Windows\System32\svchost.exe
  4. Geben Sie an der neuen Eingabeaufforderung Folgendes ein:
    Vssadmin Liste Writers
  5. Überprüfen Sie die Ausgabe, um zu ermitteln, welche Writer aufgelistet sind, und den Status dieser Writer, insbesondere MSDEWriter und SqlServerWriter.Hinweis Wenn ein Problem mit der Metadaten-Enumeration aufgetreten ist, werden die Writer nicht aufgeführt. Sie müssen sicherstellen, dass der richtige Writer in der vssadmin-Ausgabe ohne Fehler aufgeführt ist. Dies muss erfolgen, bevor eine Sicherungsanwendung einen Writer während des Snapshot-Erstellungsprozesses verwenden kann.
Für jede Instanz von SQL Server müssen Sie das SQL Server-Fehlerprotokoll untersuchen, um zu verstehen, welche Protokolle diese Instanz von SQL Server zurzeit anhört. Nachfolgend sind die typischen Einträge aufgeführt, die Sie beachten werden.
SQL Server 2005
2006-04-29 13:00:59.31 spid4s Server Name ist "ComputerName". Dies ist nur eine Informationsmeldung. Es ist keine Benutzeraktion erforderlich. 2006-04-29 13:01:00.57 Server Server lauscht auf [' any ' <IPv4> 1433]. 2006-04-29 13:01: der lokale Verbindungsanbieter von 00.59 Server Server ist bereit, die Verbindung auf [\\.\pipe\SQLLocal\MSSQLSERVER] zu akzeptieren. 2006-04-29 13:01:00.59 Server Server-lokaler Verbindungsanbieter ist bereit, die Verbindung auf [\\.\pipe\sql\query] zu akzeptieren. 2006-04-29 13:00.60 Server-Server überwacht [127.0.0.1 <IPv4> 1434]. 2006-04-29 13:01:00.68 Server SQL Server ist nun für Clientverbindungen verfügbar Es ist keine Benutzeraktion erforderlich.“
SQL Server 2000
2006-04-30 11:23:08.18 spid3 Server Name ist "ComputerName \SQL2000". 2006-04-30 11:23:08.18 Server SQL Server, der auf 172.30.137.50:2012.2006-04-30 11:23:08.18 Server SQL Server horcht auf 127.0.0.1:2012.2006-04-30 11:23:08.37 Server SQL Server, der TCP überwacht, Shared Memory, Named Pipes. 2006-04-30 11:23:08.37 Server SQL Server ist für Clientverbindungen bereit
Wenn Sie die vorherigen Beispiele überprüfen, stellen Sie fest, dass die Instanzen von SQL Server die folgenden drei Protokolle abhören:
  • TCP
  • Named Pipes
  • Shared Memory
Wenn bestimmte Protokolle konfiguriert sind, kann es vorkommen, dass der Server nicht abgehört. Auch wenn Sie einen bestimmten Satz von Protokollen für den Server konfiguriert haben, die überwacht werden sollen, kann es vorkommen, dass der Server nicht alle abhören kann. Dies kann auf Umweltprobleme auf dem Server zurückzuführen sein. Sie müssen also einen Blick auf die Protokolle werfen, die Sie für diese bestimmte Instanz von SQL Server für die Überwachung konfiguriert haben. Für SQL Server 2005 müssen Sie den SQL Server-Konfigurations-Manager verwenden. Für SQL Server 2000 müssen Sie das Server-Netzwerkdienstprogramm verwenden. jetzt gehen wir auf den Client-Teil der Protokollkonfiguration. Es gibt zwei Client Konfigurations Punkte, die Sie beachten müssen. Der erste ist die Liste der aktivierten Clientprotokolle. Beim anderen handelt es sich um die Reihenfolge, in der die Clientprotokolle für die Verbindung verwendet werden. Die Standardeinstellungen unterscheiden sich von verschiedenen Betriebssystemen und für die verschiedenen Versionen und Editionen von SQL Server. Informationen zu den Standardeinstellungen finden Sie in den entsprechenden Themen zur Online Dokumentation. Hierbei ist zu beachten, dass mindestens ein Client Protokoll aktiviert sein sollte, das dem Serverprotokoll entspricht. Die einzige Möglichkeit, wie Sie die Verbindungen des Writers zwingen können, ein bestimmtes Protokoll zu durchlaufen, besteht darin, einen Alias auf dem Server zu konfigurieren. Weder das VSS-Framework noch die Writer verfügen über Konfigurationseinstellungen, in denen Sie verbindungsspezifische oder Authentifizierungs spezifische Informationen für die Verwendung durch den Clientcomputer angeben können. Sie können den folgenden einfachen Test ausführen, um zu ermitteln, welches Protokoll für welche Standardverbindungen mit der jeweiligen Instanz von SQL Server verwendet wird:
  1. Stellen Sie sicher, dass der Aufgabenplanungsdienst gestartet wurde.
  2. Wenn Sie eine Terminal Dienstverbindung oder eine Remote Desktop Verbindung verwenden, stellen Sie sicher, dass Sie bei der Konsolensitzung angemeldet sind.
  3. Geben Sie an der Eingabeaufforderung den folgenden Befehl ein:
    bei 14:05/Interactive cmd. exe
    Stellen Sie sicher, dass die Zeit, die Sie in diesem Befehl angeben, vor der aktuellen Systemzeit auf dem Clientcomputer liegt.
  4. Wenn die angegebene Uhrzeit erreicht ist, wird ein neues Eingabeaufforderungsfenster mit dem folgenden Namen geöffnet:
    C:\Windows\System32\svchost.exe
    .
  5. Führen Sie in diesem Fenster die Abfrage für Ihre Version von SQL Server aus:
    • Führen Sie für SQL Server 2005 die folgende Abfrage aus:
      sqlcmd -E –S<server> -Q"SELECT net_transport FROM sys.dm_exec_connections WHERE session_id = @@spid"
    • Führen Sie für SQL Server 2000 die folgende Abfrage aus:
      osql -E –S<server> -Q"SELECT net_library FROM sysprocesses WHERE spid = @@spid"
  6. Die Ausgabe dieser Abfrage gibt Ihnen Informationen dazu, welche Protokolle auf dem Clientcomputer funktionieren. Es ist immer möglich, dass die Abfrage in Schritt 5 fehlschlägt und Ihnen eine Fehlermeldung angezeigt wird. Sie müssen diesen Fehler beheben und ihn beheben, um sicherzustellen, dass Client Instanzen von SQL Server auf dem lokalen Computer erfolgreich eine Verbindung mit der fraglichen Instanz von SQL Server herstellen können.
  7. Wenn Sie entweder den Befehl sqlcmd oder den Befehl osql ausführen, können Sie die Verbindungen erzwingen, indem Sie ein bestimmtes Protokoll verwenden und dann das Ergebnis beobachten. Stellen Sie dazu den Servernamen mit dem -S- Parameter und dem Protokoll voran, das Sie beobachten möchten. Die drei folgenden Möglichkeiten sind beispielsweise:
    • –Stcp:servername
    • –Snp:servername
    • –Slpc:servername
    Hinweis In diesen Beispielen ist Servername der Name Ihres Servers.
Wenn Sie weitere Informationen zu einem Problem finden möchten, das auf Windows Server 2003 x64-basierten Computern auftritt, klicken Sie auf die folgende Artikelnummer, um den Artikel in der Microsoft Knowledge Base anzuzeigen:
913100 Fix: der MSDE-Writer ist nicht enthalten, wenn Sie versuchen, das Tool "vssadmin. exe" zum Auflisten von Writern von abonnierten Volumenschattenkopien zu verwenden.
Weitere Informationen dazu, wie SqlServerWriter mit VSS und Instanzen von SQL Server interagiert, finden Sie auf der folgenden Microsoft-Website: Weitere Informationen zu VSS und zur Architektur von VSS finden Sie auf der folgenden MSDN-Website (Microsoft Developer Network):Weitere Informationen zum Verwalten des Zugriffs auf SQL Server für Windows-Konten und-Gruppen finden Sie in den folgenden Themen in der SQL Server 2005-Online Dokumentation:
  • Create Login (Transact-SQL)
  • sp_grantlogin (Transact-SQL-Referenz (SQL Server))
Weitere Informationen zum Verwalten der Protokolle, die von SQL Server in SQL Server 2005 überwacht werden, finden Sie auf der folgenden MSDN-Website: Weitere Informationen zum Verwalten der Protokolle, die von SQL Server in SQL Server 2000 überwacht werden, finden Sie auf der folgenden MSDN-Website: Weitere Informationen zum Verwalten der Protokollreihenfolge und einer Liste der Protokolle, die für Clientverbindungen in SQL Server 2005 verwendet werden können, finden Sie auf der folgenden MSDN-Website: Weitere Informationen zum Verwalten der Protokollreihenfolge und einer Liste der Protokolle, die für Clientverbindungen in SQL Server 2000 verwendet werden können, finden Sie auf der folgenden MSDN-Website: Wenn Sie weitere Informationen zu Verbindungsproblemen erhalten möchten, klicken Sie auf die folgende Artikelnummer, um den Artikel in der Microsoft Knowledge Base anzuzeigen:
827422 Beheben von Verbindungsproblemen in SQL Server 2000
812817 Support-WebCast: Microsoft SQL Server 2000: Problembehandlung bei der Konnektivität
Wenn Sie sicherstellen möchten, dass die MDAC-Installation ordnungsgemäß funktioniert und die Netzwerkbibliotheken ordnungsgemäß installiert sind, besuchen Sie die folgende Microsoft-Website, um das Dienstprogramm zur Komponentenüberprüfung herunterzuladen: Ich möchte Suresh für seine harte Arbeit an diesem Artikel danken. Er verfügt über fundierte Erfahrungen mit verschiedenen Microsoft Windows Server-Produkten und unterstützt Kunden und Debugging-Probleme. Wir hoffen, dass Ihnen dieses Monatsthema gefallen hat! Vielen Dank für Ihr Verständnis! Wie immer können Sie Ideen zu Themen übermitteln, die Sie in zukünftigen Kolumnen oder in der Knowledge Base über das Formular " Fragen " ansprechen möchten.