Sie müssen eine Instanz von SQL Server im Einzelbenutzermodus starten, wenn Sie DBCC CHECKDB/CHECKTABLE mit Reparaturoptionen verwenden


Zusammenfassung


Die richtige Methode zum Ausführen einer DBCC CHECKDB-oder DBCC CHECKTABLE-Anweisung mit gültigen Reparaturoptionen besteht darin, SQL Server normal zu starten und die Datenbank dann explizit im Einzelbenutzermodus festzulegen. Sie können dies entweder über Enterprise Manager oder Query Analyzer tun.Aus Enterprise Manager:
  1. Klicken Sie mit der rechten Maustaste auf den Datenbanknamen, und klicken Sie dann auf Eigenschaften.
  2. Klicken Sie im Dialogfeld Eigenschaften auf Optionen.
  3. Wählen Sie die Option einzelner Benutzer aus, und klicken Sie dann auf OK.
Aus Query Analyzer:
Use mastergosp_dboption dbname, single, true
Nachdem sich die Datenbank im Einzelbenutzermodus befindet, können Sie die Anweisungen DBCC CHECKDB oder DBCC CHECKTABLE mit den gültigen Reparaturoptionen ausführen.

Wenn Sie SQL Server 2005 verwenden

Weitere Informationen zum Starten von SQL Server im Einzelbenutzermodus finden Sie auf der folgenden MSDN-Website (Microsoft Developer Network):

Weitere Informationen


Wenn Sie SQL Server im Einzelbenutzermodus (mit-m) starten und dann eine DBCC CHECK-Anweisung (CHECKDB oder CHECKTABLE) mit einer der gültigen Reparaturoptionen ausführen, generiert SQL Server diese Fehlermeldung:
Reparaturanweisung nicht verarbeitet. Die Datenbank muss sich im Single-User-Modus befinden. DBCC-Ausführung abgeschlossen. Wenn DBCC Fehlermeldungen gedruckt hat, wenden Sie sich an den YourSystem kopiert worden-Administrator.
Die vorhergehende Fehlermeldung entspricht der Fehlernummer 7919. im folgenden Beispiel wird das Problem veranschaulicht:
  1. Starten Sie SQL Server über eine Eingabeaufforderung mit:sqlservr-c-m
  2. Stellen Sie mithilfe von Query Analyzer eine Verbindung mit SQL Server her, und führen Sie dann den folgenden Code aus:
    Use pubsgoDBCC CHECKTABLE(Authors, REPAIR_REBUILD )go
Diese Schritte bewirken, dass der Fehler am Anfang des Abschnitts "Weitere Informationen" angezeigt wird. Dieses Verhalten ist beabsichtigt. Wenn Sie SQL Server im Single-User-Modus starten, legen Sie den Status der einzelnen Datenbanken nicht explizit im Single-User-Modus ab. Das ist nur für die Master-Datenbank möglich. Die DBCC CHECK-Anweisung überprüft jedoch den Status für die jeweilige Datenbank, auf der Sie ausgeführt wird, und wenn Sie nicht auf einzelne Benutzer festgesetzt wird, erfolgt die Fehlermeldung.