sys.master_files (Transact-SQL)

Van toepassing op:SQL ServerAzure SQL Managed Instance

Bevat een rij per bestand van een database zoals opgeslagen in de master database. sys.master_files is één enkele, systeembrede weergave.

Kolomnaam Gegevenstype Description
database_id int ID van de database waarop dit bestand van toepassing is. De database_id voor de master database is altijd 1.
file_id int ID van het bestand binnen de database. De primaire file_id is altijd 1.
file_guid uniqueidentifier De unieke identificatie van het bestand.

NULL= Database is geüpgraded van een eerdere versie van SQL Server (geldig voor SQL Server 2005 (9.x) en eerdere versies).
type tinyint Bestandstype:

0 = Rijen

1 = Logboek

2 = FILESTREAM

3 = Geïdentificeerd uitsluitend voor informatieve doeleinden. Wordt niet ondersteund. Toekomstige compatibiliteit is niet gegarandeerd.

4= Volledige tekst (Volledige tekstcatalogi van vóór SQL Server 2008 (10.0.x); full-text catalogi die zijn geüpgraded naar of aangemaakt in SQL Server 2008 (10.0.x) en latere versies rapporteren een bestandstype 0.)
type_desc nvarchar(60) Beschrijving van het bestandstype:

ROWS
LOG
FILESTREAM
FULLTEXT(Volledige tekstcatalogi van vóór SQL Server 2008 (10.0.x).)
data_space_id int ID van de dataruimte waartoe dit bestand behoort. Dataspace is een bestandsgroep.

0 = Logbestanden
name sysname Logische naam van het bestand in de database.
physical_name nvarchar(260) Bestandsnaam van besturingssysteem.
state tinyint Bestandsstatus:

0 = ONLINE

1 = RESTORING

2 = RECOVERING

3 = RECOVERY_PENDING

4 = SUSPECT

5 = Geïdentificeerd uitsluitend voor informatieve doeleinden. Wordt niet ondersteund. Toekomstige compatibiliteit is niet gegarandeerd.

6 = OFFLINE

7 = DEFUNCT
state_desc nvarchar(60) Beschrijving van de bestandsstatus:

ONLINE
RESTORING
RECOVERING
RECOVERY_PENDING
SUSPECT
OFFLINE
DEFUNCT

Zie Bestandsstatussenvoor meer informatie.
size int Huidige bestandsgrootte, in pagina's van 8 KB. Voor een databasesnapshot weerspiegelt de grootte de maximale ruimte die de snapshot ooit kan gebruiken voor het bestand.

Opmerking: Dit veld wordt ingevuld als nul voor FILESTREAM-containers. Zoek in de sys.database_files catalogusweergave naar de werkelijke grootte van FILESTREAM-containers.
max_size int Maximale bestandsgrootte, in pagina's van 8 KB:

-1 = Bestand groeit totdat de schijf vol is.

268435456 = Logbestand groeit tot een maximale grootte van 2 TB.

Opmerking: Databases zijn geüpgraded met een rapport -1 van onbeperkte logbestandgrootte voor de maximale grootte van het logbestand.

Opmerking: Als max_size = -1 en growth = 0, dan is geen groei toegestaan.
growth int 0 = Bestand heeft een vaste grootte en groeit niet.

> 0 = Bestand groeit automatisch.

Als is_percent_growth = 0, is de groeiincrement in eenheden van 8-KB pagina's, afgerond naar de dichtstbijzijnde 64 KB.

Als is_percent_growth = 1, wordt de groeitoename uitgedrukt als een percentage hele getallen.
is_media_read_only bit 1 = Het bestand staat op alleen-lezen media.

0 = Het bestand bevindt zich op lees-/schrijfmedia.
is_read_only bit 1 = Bestand is gemarkeerd als alleen-lezen.

0 = bestand wordt gemarkeerd als lezen/schrijven.
is_sparse bit 1 = Bestand is een sparse bestand.

0 = Bestand is geen sparse bestand.

Zie De grootte van het Sparse-bestand van een momentopname van een database (Transact-SQL) weergevenvoor meer informatie.
is_percent_growth bit 1 = De groei van het bestand is een percentage.

0 = Absolute groeigrootte in pagina's.
is_name_reserved bit 1 = Verwijderde bestandsnaam is herbruikbaar. Er moet een log-backup worden gemaakt voordat de naam (name of physical_name) opnieuw gebruikt kan worden voor een nieuwe bestandsnaam.

0 = Bestandsnaam is niet beschikbaar voor hergebruik.
is_persistent_log_buffer bit 1 = Het logbestand is een persistente logbuffer.

0 = Het bestand is geen persistente logbuffer.

Voor meer informatie, zie Voeg persistente logbuffer toe aan een database.
create_lsn numeriek(25,0) Log-sequentienummer (LSN) waarop het bestand is aangemaakt.
drop_lsn numeriek(25,0) LSN waar het dossier werd gedropt.
read_only_lsn numeriek(25,0) LSN waarbij de bestandsgroep die het bestand bevatte veranderde van lezen/schrijven naar alleen-lezen (meest recente wijziging).
read_write_lsn numeriek(25,0) LSN waarop de bestandsgroep die het bestand bevatte veranderde van alleen-lezen naar lezen/schrijven (meest recente wijziging).
differential_base_lsn numeriek(25,0) Basis voor differentiële back-ups. Data-extents die na deze LSN zijn veranderd, worden opgenomen in een differentiële back-up.
differential_base_guid uniqueidentifier Unieke identificatie van de basis-back-up waarop een differentiële back-up is gebaseerd.
differential_base_time datetime Tijd die overeenkomt met differential_base_lsn.
redo_start_lsn numeriek(25,0) LSN waar de volgende roll-forward moet beginnen.

NULL tenzij state = RESTORING of state = RECOVERY_PENDING.
redo_start_fork_guid uniqueidentifier Unieke identificatie van de recovery fork. De first_fork_guid volgende logback-up die wordt hersteld, moet overeenkomen met deze waarde. Dit geeft de huidige staat van de container weer.
redo_target_lsn numeriek(25,0) LSN waar de online doordraaiing van dit bestand kan stoppen.

NULL tenzij state = RESTORING of state = RECOVERY_PENDING.
redo_target_fork_guid uniqueidentifier De herstelvork waarop de container kan worden teruggevonden. In combinatie met redo_target_lsn.
backup_lsn numeriek(25,0) Het LSN van de meest recente data of differentiële back-up van het bestand.
credential_id int De credential_id from sys.credentials die wordt gebruikt om het bestand op te slaan. Bijvoorbeeld, wanneer SQL Server draait op een Azure Virtual Machine en de databasebestanden worden opgeslagen in Azure Blob Storage, wordt een credential geconfigureerd met de toegangsgegevens voor de opslaglocatie.

Remarks

Wanneer u grote indexen neerlegt of herbouwt, of grote tabellen verwijdert of afkappen, worden de werkelijke toewijzingen van pagina-transacties en de bijbehorende vergrendelingen uitgesteld totdat de transactiedoorvoeringen zijn doorgevoerd. Uitgestelde drop-bewerkingen geven toegewezen ruimte niet onmiddellijk vrij. De waarden die onmiddellijk na sys.master_files het verwijderen of afkappen van een groot object worden geretourneerd, geven daarom mogelijk niet de werkelijke beschikbare schijfruimte weer.

Voor de tempdb database wordt sys.master_files de initiële tempdb grootte weergegeven. De waarden worden gebruikt als sjabloon voor tempdb het maken bij het opstarten van SQL Server. tempdb Groei wordt niet weerspiegeld in dit beeld. Om de huidige bestandsgrootte te tempdb krijgen, zoek in plaats daarvan een query tempdb.sys.database_files .

Permissions

De minimale rechten die nodig zijn om de overeenkomstige rij te zien zijn CREATE DATABASE, ALTER ANY DATABASE, of VIEW ANY DEFINITION.