Freigeben über


Dateistatus

In SQL Server wird der Status einer Datenbankdatei unabhängig vom Status der Datenbank verwaltet. Eine Datei befindet sich immer in einem bestimmten Zustand, z. B. ONLINE oder OFFLINE. Verwenden Sie zum Anzeigen des aktuellen Zustands einer Datei die sys.master_files - oder sys.database_files Katalogansicht. Wenn die Datenbank offline ist, kann der Status der Dateien in der sys.master_files Katalogansicht angezeigt werden.

Der Status der Dateien in einer Dateigruppe bestimmt die Verfügbarkeit der gesamten Dateigruppe. Damit eine Dateigruppe verfügbar ist, müssen alle Dateien in der Dateigruppe online sein. Verwenden Sie die Katalogansicht "sys.filegroups ", um den aktuellen Status einer Dateigruppe anzuzeigen. Wenn eine Dateigruppe offline ist und Sie versuchen, über eine Transact-SQL-Anweisung auf die Dateigruppe zuzugreifen, tritt ein Fehler auf. Wenn der Abfrageoptimierer Abfragepläne für SELECT-Anweisungen erstellt, werden nicht gruppierte Indizes und indizierte Ansichten vermieden, die sich in Offlinedateigruppen befinden, sodass diese Anweisungen erfolgreich ausgeführt werden können. Enthält die Offlinedateigruppe jedoch den Heap oder gruppierten Index der Zieltabelle, schlagen die SELECT-Anweisungen fehl. Darüber hinaus schlägt jede INSERT-, UPDATE- oder DELETE-Anweisung, die eine Tabelle mit einem beliebigen Index in einer Offlinedateigruppe ändert, fehl.

Dateistatusdefinitionen

In der folgenden Tabelle werden die Dateizustände definiert.

Staat Definition
ONLINE Die Datei ist für alle Vorgänge verfügbar. Dateien in der primären Dateigruppe sind immer online, wenn die Datenbank selbst online ist. Wenn eine Datei in der primären Dateigruppe nicht online ist, ist die Datenbank nicht online, und die Zustände der sekundären Dateien sind nicht definiert.
OFFLINE Die Datei ist für den Zugriff nicht verfügbar und ist möglicherweise nicht auf dem Datenträger vorhanden. Dateien werden durch explizite Benutzeraktion offline und bleiben offline, bis weitere Benutzeraktionen ausgeführt werden.

**Vorsicht** Eine Datei sollte nur offline festgelegt werden, wenn die Datei beschädigt ist, aber sie kann wiederhergestellt werden. Eine Auf offline festgelegte Datei kann nur online festgelegt werden, indem die Datei aus der Sicherung wiederhergestellt wird. Weitere Informationen zum Wiederherstellen einer einzelnen Datei finden Sie unter RESTORE (Transact-SQL).
UMLAGERND Die Datei wird wiederhergestellt. Dateien geben den Wiederherstellungszustand ein, da sich ein Wiederherstellungsbefehl auf die gesamte Datei auswirkt, nicht nur eine Seitenwiederherstellung, und verbleiben in diesem Zustand, bis die Wiederherstellung abgeschlossen ist und die Datei wiederhergestellt wird.
Wiederherstellung ausstehend Die Wiederherstellung der Datei wurde verschoben. Eine Datei wechselt automatisch in diesen Zustand, weil ein stückweiser Wiederherstellungsvorgang ausgeführt wird, bei dem die Datei nicht wiederhergestellt und zurückgewonnen wird. Zusätzliche Aktion durch den Benutzer ist erforderlich, um den Fehler zu beheben und den Wiederherstellungsvorgang zuzulassen. Weitere Informationen finden Sie unter "Piecemeal Restores (SQL Server)".
Verdächtiger Fehler bei der Wiederherstellung der Datei während eines Onlinewiederherstellungsvorgangs. Wenn sich die Datei in der primären Dateigruppe befindet, wird die Datenbank auch als verdächtig markiert. Andernfalls ist nur die Datei verdächtig und die Datenbank ist noch online.

Die Datei verbleibt im verdächtigen Zustand, bis sie von einer der folgenden Methoden zur Verfügung gestellt wird:

Wiederherstellen und Wiederherstellung

DBCC CHECKDB mit REPAIR_ALLOW_DATA_LOSS
AUFGELÖST Die Datei wurde gelöscht, wenn sie nicht online war. Alle Dateien in einer Dateigruppe werden ungültig, wenn eine offline-Dateigruppe entfernt wird.

ALTER DATABASE (Transact-SQL)

Datenbankstatus

Spiegelungsstatus (SQL Server)

DBCC CHECKDB (Transact-SQL)

Datenbankdateien und Dateigruppen