sys.database_files (Transact-SQL)

Contient une ligne par fichier d'une base de données telle qu'elle est stockée dans la base de données. C'est une vue par base de données.

Nom de colonne

Type de données

Description

file_id

int

ID du fichier dans la base de données.

file_guid

uniqueidentifier

GUID du fichier

NULL = la base de données a été mise à niveau à partir d'une version antérieure de SQL Server.

type

tinyint

Type de fichier :

0 = Lignes (inclut des fichiers de catalogues de texte intégral qui sont mis à niveau ou créés dans SQL Server 2012.)

1 = journal

2 = FILESTREAM

3 = Identifié à titre d'information uniquement. Non pris en charge. La compatibilité future n'est pas garantie.

4 = Texte intégral (le catalogue de texte intégral antérieur à SQL Server 2012; les catalogues de texte intégral qui sont mis à niveau ou créés dans SQL Server 2012 signaleront un type de fichier 0.)

type_desc

nvarchar(60)

Description du type de fichier :

ROWS (inclut des fichiers de catalogues de texte intégral qui sont mis à niveau ou créés dans SQL Server 2012.)

LOG

FILESTREAM

FULLTEXT (catalogues de texte intégral antérieurs à SQL Server 2012.)

data_space_id

int

La valeur peut être supérieure ou égale à 0. La valeur 0 représente le fichier journal de la base de données et une valeur supérieure à 0 représente l'ID du groupe de fichiers où ce fichier de données est stocké.

name

sysname

Nom logique du fichier dans la base de données.

physical_name

nvarchar(260)

Nom de fichier du système d'exploitation. Si la base de données est hébergée par réplica secondaire lisible AlwaysOn, physical_name indique l'emplacement du fichier de la base de données du réplica principal. Pour obtenir l'emplacement de fichier approprié d'une base de données secondaire lisible, interrogez sys.sysaltfiles.

state

tinyint

État du fichier :

0 = ONLINE

1 = RESTORING

2 = RECOVERING

3 = RECOVERY_PENDING

4 = SUSPECT

5 = Identifié à titre d'information uniquement. Non pris en charge. La compatibilité future n'est pas garantie.

6 = OFFLINE

7 = DEFUNCT

state_desc

nvarchar(60)

Description de l'état du fichier :

ONLINE

RESTORING

RECOVERING

RECOVERY_PENDING

SUSPECT

OFFLINE

DEFUNCT

Pour plus d'informations, consultez États des fichiers.

size

int

Taille actuelle du fichier (en pages de 8 Ko)

0 = Non applicable

Dans le cas d'un instantané de base de données, size reflète l'espace maximal que celui-ci peut utiliser pour le fichier.

Pour les conteneurs de groupe de fichiers FILESTREAM, size reflète la taille utilisée actuelle du conteneur.

max_size

int

Taille maximale du fichier, en pages de 8 Ko :

0 = aucune croissance n'est autorisée.

-1 = le fichier croît jusqu'à saturation du disque.

268435456 = le fichier journal croît jusqu'à une taille maximale de 2 To.

RemarqueRemarque
Si une base de données est mise à niveau avec une taille de fichier journal illimitée, le paramètre de la taille maximale du fichier journal a pour valeur -1.

Pour les conteneurs de groupe de fichiers FILESTREAM, max_size reflète la taille maximale du conteneur.

growth

int

0 = la taille du fichier est fixe et celui-ci ne croît pas.

>0 = le fichier croît automatiquement.

Si is_percent_growth a pour valeur 0, l'incrément de croissance est exprimé en unités de pages de 8 Ko, arrondies aux 64 Ko les plus proches.

Si is_percent_growth = 1, l'incrément de croissance est exprimé sous la forme d'un pourcentage à nombre entier.

is_media_read_only

bit

1 = le fichier se trouve sur un support en lecture seule.

0 = Le fichier se trouve sur un support en lecture-écriture.

is_read_only

bit

1 = le fichier est marqué comme étant accessible en lecture seule.

0 = Le fichier est marqué en lecture-écriture.

is_sparse

bit

1 = le fichier est un fichier partiellement alloué.

0 = le fichier n'est pas un fichier partiellement alloué.

Pour plus d'informations, consultez Afficher la taille du fichier partiellement alloué d'un instantané de base de données (Transact-SQL).

is_percent_growth

bit

1 = la croissance du fichier est exprimée en pourcentage.

0 = importance de croissance absolue en pages.

is_name_reserved

bit

1 = Le nom du fichier supprimé (name ou physical_name) ne peut être réutilisé qu'après la prochaine sauvegarde du journal. Lorsque des fichiers sont supprimés d'une base de données, les noms logiques restent réservés jusqu'à la prochaine sauvegarde du journal. Cette colonne concerne uniquement le mode de restauration complète et le mode de récupération utilisant les journaux de transactions.

create_lsn

numeric(25,0)

Numéro séquentiel dans le journal (LSN) auquel le fichier a été créé.

drop_lsn

numeric(25,0)

LSN auquel le fichier a été supprimé.

0 = Le nom de fichier n'est pas disponible pour réutilisation.

read_only_lsn

numeric(25,0)

LSN auquel le groupe de fichiers qui contient le fichier est passé de l'état lecture/écriture à l'état lecture seule (changement le plus récent).

read_write_lsn

numeric(25,0)

LSN auquel le groupe de fichiers qui contient le fichier est passé de l'état lecture seule à l'état lecture/écriture (changement le plus récent).

differential_base_lsn

numeric(25,0)

Base des sauvegardes différentielles. Les étendues de données modifiées après ce LSN sont incluses dans une sauvegarde différentielle.

differential_base_guid

uniqueidentifier

Identificateur unique de la sauvegarde de base sur laquelle repose une sauvegarde différentielle.

differential_base_time

datetime

Heure correspondant à differential_base_lsn.

redo_start_lsn

numeric(25,0)

LSN auquel doit démarrer la restauration par progression suivante.

A la valeur NULL sauf si state = RESTORING ou state = RECOVERY_PENDING.

redo_start_fork_guid

uniqueidentifier

Identificateur unique du branchement de récupération. Le first_fork_guid de la prochaine sauvegarde de fichier journal restaurée doit correspondre à cette valeur. Cela représente l'état actuel du fichier.

redo_target_lsn

numeric(25,0)

LSN auquel peut s'arrêter la restauration par progression en ligne sur ce fichier.

Est NULL sauf si state = RESTORING ou state = RECOVERY_PENDING.

redo_target_fork_guid

uniqueidentifier

Fourchette de récupération dans laquelle le fichier peut être récupéré. Associé à redo_target_lsn.

backup_lsn

numeric(25,0)

LSN de la sauvegarde de données ou différentielle du fichier la plus récente.

[!REMARQUE]

Lorsque vous supprimez ou reconstruisez des index volumineux ou lorsque vous supprimez ou tronquez des tables volumineuses, le moteur de base de données diffère les désallocations des pages actives et de leurs blocs associés jusqu'à ce que la transaction soit validée. Les opérations de suppression différées ne libèrent pas immédiatement l'espace alloué. C'est pourquoi, les valeurs retournées par sys.database_files immédiatement après la suppression ou la troncature d'un objet volumineux ne reflètent pas toujours l'espace disque réellement disponible.

Autorisations

Nécessite l'appartenance en tant que membre au rôle public. Pour plus d'informations, consultez Configuration de la visibilité des métadonnées.

Voir aussi

Référence

Affichages catalogue de bases de données et de fichiers (Transact-SQL)

sys.databases (Transact-SQL)

sys.master_files (Transact-SQL)

sys.data_spaces (Transact-SQL)

Concepts

États des fichiers

Groupes de fichiers et fichiers de base de données