Vorgehensweise beim Wiederherstellen von SQL Server nach der Tempdb-Datenbank wird als fehlerverdächtig gekennzeichnet.

Problembeschreibung

Beim SQL Server-Dienst starten kann der Dienst fehl, da die Tempdb -Datenbank als fehlerverdächtig markiert ist. Möglicherweise den folgenden Text in das SQL Server-Fehlerprotokoll angezeigt:
2001-02-08 14:04:07.64 spid1    Clearing tempdb database.
2001-02-08 14:04:07.66 spid1 Creating file e:\MSSQL7\DATA\TEMPDB.MDF.
2001-02-08 14:04:07.87 spid1 Closing file e:\MSSQL7\DATA\TEMPDB.MDF.
2001-02-08 14:04:07.90 spid1 Creating file e:\MSSQL7\DATA\TEMPLOG.LDF.
2001-02-08 14:04:07.97 spid1 Closing file e:\MSSQL7\DATA\TEMPLOG.LDF.
2001-02-08 14:04:08.02 spid1 Opening file e:\MSSQL7\DATA\TEMPDB.MDF.
2001-02-08 14:04:08.03 spid1 Opening file e:\MSSQL7\DATA\TEMPLOG.LDF.
2001-02-08 14:04:08.32 spid1 Closing file e:\MSSQL7\DATA\TEMPDB.MDF.
2001-02-08 14:04:08.34 spid1 Closing file e:\MSSQL7\DATA\TEMPLOG.LDF.
2001-02-08 14:04:08.36 spid1 Starting up database 'tempdb'.
2001-02-08 14:04:08.36 spid1 Opening file e:\MSSQL7\DATA\TEMPDB.MDF.
2001-02-08 14:04:08.39 spid1 Opening file e:\MSSQL7\DATA\TEMPLOG.LDF.
2001-02-08 14:04:08.43 spid1 Bypassing recovery for database 'tempdb' because it is marked SUSPECT.
2001-02-08 14:04:08.47 spid1 Database 'tempdb' cannot be opened. It has been marked SUSPECT by recovery. See the SQL Server errorlog for more information.
2001-02-08 14:04:08.50 spid1 WARNING: problem activating all tempdb files.
2001-02-08 14:04:08.50 spid1 Trying just primary files.
2001-02-08 14:04:08.50 spid1 Database 'tempdb' cannot be opened. It has been marked SUSPECT by recovery. See the SQL Server errorlog for more information.
2001-02-08 14:04:08.50 spid1 Database 'tempdb' cannot be opened. It has been marked SUSPECT by recovery. See the SQL Server errorlog for more information.

Hinweis Gibt es mehrere Gründe, warum eine Datenbank fehlerverdächtig markiert wird, aber die Ursachen sind nicht Gegenstand dieses Artikels.

PROBLEMUMGEHUNG

Die folgenden Schritte erläutern das Erstellen einer neuen Datenbank Tempdb . Mit dieser Lösung können Sie den SQL Server-Dienst erfolgreich gestartet.
  1. Falls vorhanden, Umbenennen Sie die aktuellen Tempdb.mdf und Templog.ldf-Dateien Wenn die Dateien nicht vorhanden sind, die mögliche Ursache für den Status fehlerverdächtig, fehlen Dateien.
  2. Starten Sie SQL Server über eine Befehlszeile mithilfe des folgenden Befehls:
    Sqlservr - C -f-T3608-T4022
    Für benannte Instanzen von SQL Server 2000 müssen Sie die zusätzlichen hinzufügen
    s - Parameter.

    In SQL Server 7.0-Cluster müssen Sie zuerst diese Anweisung ausführen:
    Legen Sie _CLUSTER_NETWORK_NAME = YourSQLVirtualName
    Dadurch wird SQL Server von einer Befehlszeile aus starten.


    Hinweis Stellen Sie sicher, dass das Eingabeaufforderungsfenster geöffnet bleibt, nachdem SQL Server gestartet. Schließen das Eingabeaufforderungsfenster beendet den SQL Server-Prozess.
  3. Verbindung zum Server mit Query Analyzer, und verwenden Sie die folgende gespeicherte Prozedur, um den Status der Datenbank Tempdb zurückzusetzen.
    exec master..sp_resetstatus Tempdb
  4. Herunterfahren des Servers durch Drücken von STRG + C im Eingabeaufforderungsfenster.
  5. Starten Sie den SQL Server-Dienst. Erstellt einen neuen Satz von Tempdb Datenbankdateien und die Tempdb -Datenbank wiederhergestellt.

    Hinweis Die Umgebungsvariable erstellt einen neuen Satz von Tempdb Datenbanken beim SQL Server-Dienst neu gestartet wird. Um die Umgebungsvariablen zu entfernen, führen Sie folgende Anweisung:
    set _CLUSTER_NETWORK_NAME= 

Referenzen

Weitere Informationen finden Sie im Thema "Gewusst wie: Starten einer benannten Instanz von SQL Server (Befehlszeile)" und "SQL Server-Startoptionen" Thema in der Onlinedokumentation zu SQL Server 2000.
Eigenschaften

Artikelnummer: 288809 – Letzte Überarbeitung: 23.01.2017 – Revision: 1

Feedback