sys.database_files (Transact-SQL)
Enthält eine Zeile pro Datei einer Datenbank, wie sie in der Datenbank selbst gespeichert ist. Hierbei handelt es sich um eine Sicht pro Datenbank.
Spaltenname
Datentyp
Beschreibung
file_id
int
ID der Datei in der Datenbank
file_guid
uniqueidentifier
GUID der Datei.
NULL = Es wurde ein Update der Datenbank von einer früheren Version von Microsoft SQL Server ausgeführt.
type
tinyint
Dateityp:
0 = Zeilen
1 = Protokoll
2 = Reserviert für zukünftige Verwendung
3 = Reserviert für zukünftige Verwendung
4 = Volltext
type_desc
nvarchar(60)
Beschreibung des Dateityps:
ROWS
LOG
FULLTEXT
data_space_id
int
ID des Datenspeicherplatzes, zu dem diese Datei gehört. Der Datenspeicherplatz ist eine Dateigruppe.
0 = Protokolldatei.
name
sysname
Logischer Name der Datei in der Datenbank
physical_name
nvarchar(260)
Betriebssystem-Dateiname
state
tinyint
Dateistatus:
0 = ONLINE
1 = RESTORING
2 = RECOVERING
3 = RECOVERY_PENDING
4 = SUSPECT
5 = Reserviert für zukünftige Verwendung
6 = OFFLINE
7 = DEFUNCT
state_desc
nvarchar(60)
Beschreibung des Dateistatus:
ONLINE
RESTORING
RECOVERING
RECOVERY_PENDING
SUSPECT
OFFLINE
DEFUNCT
Weitere Informationen finden Sie unter Dateistatus.
size
int
Aktuelle Größe der Datei in Seiten mit einer Größe von 8 KB.
0 = Nicht zutreffend
Für einen Datenbanksnapshot gibt size den maximalen Speicherplatz wieder, den der Snapshot jemals für die Datei verwenden kann.
max_size
int
Maximale Dateigröße in Seiten mit einer Größe von 8 KB:
0 = Es ist keine Vergrößerung zulässig.
-1 = Die Datei kann vergrößert werden, bis der Datenträger voll ist.
268435456 = Die Protokolldatei kann bis zu einer maximalen Größe von 2 TB vergrößert werden.
Hinweis:
Datenbanken, für die ein Update mit einer unbeschränkten Größe der Protokolldatei ausgeführt wird, melden -1 für die maximale Größe der Protokolldatei.
growth
int
0 = Die Datei hat eine feste Größe und kann nicht vergrößert werden.
>0 = Die Datei wird automatisch vergrößert.
Ist is_percent_growth = 0, wird die Schrittweite für die Vergrößerung in Einheiten von Seiten mit einer Größe von 8 KB ausgedrückt, auf den nächsten durch 64 KB teilbaren Wert gerundet.
Ist is_percent_growth = 1, wird die Schrittweite für die Vergrößerung als ganzzahliger Prozentwert ausgedrückt.
is_media_read_only
bit
1 = Die Datei befindet sich auf einem schreibgeschützten Medium.
0 = Die Datei befindet sich auf einem Lese/Schreib-Medium.
is_read_only
bit
1 = Die Datei ist als schreibgeschützt gekennzeichnet.
0 = Die Datei ist als Lese/Schreib-Datei gekennzeichnet.
is_sparse
bit
1 = Die Datei ist eine Datei mit geringer Dichte.
0 = Die Datei ist keine Datei mit geringer Dichte.
Weitere Informationen finden Sie unter Grundlegendes zur Größe von Dateien mit geringer Dichte in Datenbanksnapshots.
is_percent_growth
bit
1 = Die Vergrößerung der Datei wird als Prozentsatz angegeben.
0 = Absolute Größe der Vergrößerung in Seiten.
is_name_reserved
bit
1 = Der gelöschte Dateiname (name oder physical_name) kann erst nach der nächsten Protokollsicherung wiederverwendet werden. Wenn Dateien aus einer Datenbank gelöscht werden, bleiben die logischen Namen bis zur nächsten Protokollsicherung reserviert. Diese Spalte ist nur beim vollständigen und beim massenprotokollierten Wiederherstellungsmodell relevant.
create_lsn
numeric(25,0)
Protokollfolgenummer (LSN, Log Sequence Number), bei der die Datei erstellt wurde.
drop_lsn
numeric(25,0)
LSN, bei der die Datei gelöscht wurde.
0 = Der Dateiname ist nicht für die Wiederverwendung verfügbar.
read_only_lsn
numeric(25,0)
LSN, bei der die Dateigruppe mit der Datei von Lesen/Schreiben in Schreibgeschützt geändert wurde (letzte Änderung).
read_write_lsn
numeric(25,0)
LSN, bei der die Dateigruppe mit der Datei von Schreibgeschützt in Lesen/Schreiben geändert wurde (letzte Änderung).
differential_base_lsn
numeric(25,0)
Basis für differenzielle Sicherungen. Nach dieser LSN geänderte Datenblöcke werden in eine differenzielle Sicherung eingeschlossen.
differential_base_guid
uniqueidentifier
Eindeutiger Bezeichner der Basissicherung, auf der eine differenzielle Sicherung basiert.
differential_base_time
datetime
Uhrzeit, die differential_base_lsn entspricht.
redo_start_lsn
numeric(25,0)
LSN, bei der das nächste Rollforward gestartet werden muss.
Ist NULL, es sei denn, state = RESTORING oder state = RECOVERY_PENDING.
redo_start_fork_guid
uniqueidentifier
Eindeutiger Bezeichner der Wiederherstellungsverzweigung. Der Wert von first_fork_guid der nächsten wiederhergestellten Protokollsicherung muss mit diesem Wert übereinstimmen. Dies stellt den aktuellen Status der Datei dar.
redo_target_lsn
numeric(25,0)
LSN, bei der das Onlinerollforward für diese Datei beendet werden kann.
Ist NULL, es sei denn, state = RESTORING oder state = RECOVERY_PENDING.
redo_target_fork_guid
uniqueidentifier
Die Wiederherstellungsverzweigung, auf der die Datei wiederhergestellt werden kann. Bildet ein Paar mit redo_target_lsn.
backup_lsn
numeric(25,0)
Die LSN der letzten Daten- oder differenziellen Sicherung der Datei.
Hinweis: |
---|
Wenn Sie große Indizes löschen oder erneut erstellen oder große Tabellen löschen oder abschneiden, verzögert Datenbankmodul die tatsächlichen Aufhebungsvorgänge der Seitenzuordnungen und die zugehörigen Sperren bis nach dem Commit der Transaktion. Bei verzögerten Löschvorgängen wird der zugeordnete Speicherplatz nicht sofort freigegeben. Daher spiegeln die Werte, die von sys.database_files sofort nach dem Löschen oder Abschneiden eines großen Objekts zurückgegeben werden, möglicherweise nicht den tatsächlichen verfügbaren Speicherplatz wider. Weitere Informationen zu verzögerten Zuordnungen finden Sie unter Löschen und Neuerstellen großer Objekte. |
Siehe auch
Verweis
Datenbanken und Dateikatalogsichten (Transact-SQL)
sys.databases (Transact-SQL)
sys.master_files (Transact-SQL)
sys.data_spaces (Transact-SQL)
Andere Ressourcen
Dateistatus
Grundlegendes zu Dateien und Dateigruppen