sys.database_files (Transact-SQL)sys.database_files (Transact-SQL)

Se aplica a:Applies to: síSQL ServerSQL Server (todas las versiones admitidas) yesSQL ServerSQL Server (all supported versions) SíAzure SQL DatabaseAzure SQL DatabaseYesAzure SQL DatabaseAzure SQL Database SíInstancia administrada de Azure SQLAzure SQL Managed InstanceYesInstancia administrada de Azure SQLAzure SQL Managed Instance síAzure Synapse AnalyticsAzure Synapse AnalyticsyesAzure Synapse AnalyticsAzure Synapse Analytics síAlmacenamiento de datos paralelosParallel Data WarehouseyesAlmacenamiento de datos paralelosParallel Data WarehouseSe aplica a:Applies to: síSQL ServerSQL Server (todas las versiones admitidas) yesSQL ServerSQL Server (all supported versions) SíAzure SQL DatabaseAzure SQL DatabaseYesAzure SQL DatabaseAzure SQL Database SíInstancia administrada de Azure SQLAzure SQL Managed InstanceYesInstancia administrada de Azure SQLAzure SQL Managed Instance síAzure Synapse AnalyticsAzure Synapse AnalyticsyesAzure Synapse AnalyticsAzure Synapse Analytics síAlmacenamiento de datos paralelosParallel Data WarehouseyesAlmacenamiento de datos paralelosParallel Data Warehouse

Contiene una fila por cada archivo de una base de datos como se almacena en la propia base de datos.Contains a row per file of a database as stored in the database itself. Es una vista por base de datos.This is a per-database view.

Nombre de la columnaColumn name Tipo de datosData type DescripciónDescription
file_idfile_id intint Identificador del archivo dentro de la base de datos.ID of the file within database.
file_guidfile_guid uniqueidentifieruniqueidentifier GUID del archivo.GUID for the file.

NULL = la base de datos se actualizó desde una versión anterior de SQL ServerSQL Server (válida para SQL Server 2005 y versiones anteriores).NULL = Database was upgraded from an earlier version of SQL ServerSQL Server (Valid for SQL Server 2005 and earlier).
typetype tinyinttinyint Tipo de archivo:File type:

0 = filas0 = Rows

1 = Registro1 = Log

2 = FILESTREAM2 = FILESTREAM

3 =Solamente se identifica con fines informativos.Identified for informational purposes only. No compatible.Not supported. La compatibilidad con versiones posteriores no está garantizada.Future compatibility is not guaranteed.3 = Solamente se identifica con fines informativos.Identified for informational purposes only. No compatible.Not supported. La compatibilidad con versiones posteriores no está garantizada.Future compatibility is not guaranteed.

4 = texto completo4 = Full-text
type_desctype_desc nvarchar(60)nvarchar(60) Descripción del tipo de archivo:Description of the file type:

ROWSROWS

REGISTROLOG

FILESTREAMFILESTREAM

FULLTEXTFULLTEXT
data_space_iddata_space_id intint El valor puede ser 0 o mayor que 0.Value can be 0 or greater than 0. El valor 0 representa el archivo de registro de base de datos y un valor mayor que 0, el identificador del grupo de archivos donde está almacenado este archivo de datos.A value of 0 represents the database log file, and a value greater than 0 represents the ID of the filegroup where this data file is stored.
namename sysnamesysname Nombre lógico del archivo de la base de datos.Logical name of the file in the database.
physical_namephysical_name nvarchar(260)nvarchar(260) Nombre del archivo del sistema operativo.Operating-system file name. Si la base de datos está hospedada en una réplica secundaria legiblede AlwaysOn, physical_name indica la ubicación del archivo de la base de datos de réplica principal.If the database is hosted by an AlwaysOn readable secondary replica, physical_name indicates the file location of the primary replica database. Para la ubicación de archivo correcta de una base de datos secundaria legible, consulte sys.sysaltfiles.For the correct file location of a readable secondary database, query sys.sysaltfiles.
statestate tinyinttinyint Estado del archivo:File state:

0 = Con conexión 0 = ONLINE

1 = En restauración 1 = RESTORING

2 = En recuperación 2 = RECOVERING

3 = RECOVERY_PENDING3 = RECOVERY_PENDING

4 = Sospechoso 4 = SUSPECT

5 = Solamente se identifica con fines informativos.Identified for informational purposes only. No compatible.Not supported. La compatibilidad con versiones posteriores no está garantizada.Future compatibility is not guaranteed.5 = Solamente se identifica con fines informativos.Identified for informational purposes only. No compatible.Not supported. La compatibilidad con versiones posteriores no está garantizada.Future compatibility is not guaranteed.

6 = Sin conexión 6 = OFFLINE

7 = Inactivo7 = DEFUNCT
state_descstate_desc nvarchar(60)nvarchar(60) Descripción del estado del archivo:Description of the file state:

ONLINEONLINE

RESTORINGRESTORING

RECOVERINGRECOVERING

RECOVERY_PENDING RECOVERY_PENDING

SUSPECTSUSPECT

OFFLINEOFFLINE

DEFUNCTDEFUNCT

Para más información, vea Estados de los archivos.For more information, see File States.
sizesize intint Tamaño actual de archivo, en páginas de 8 KB.Current size of the file, in 8-KB pages.

0 = No aplicable.0 = Not applicable

En una instantánea de base de datos, size refleja el espacio máximo que la instantánea puede utilizar para el archivo.For a database snapshot, size reflects the maximum space that the snapshot can ever use for the file.

En los contenedores de grupos de archivos FILESTREAM, size refleja el tamaño actual del contenedor.For FILESTREAM filegroup containers, size reflects the current used size of the container.
max_sizemax_size intint Tamaño máximo del archivo, en páginas de 8 KB:Maximum file size, in 8-KB pages:

0 = No se permite el crecimiento.0 = No growth is allowed.

-1 = El archivo crece hasta que el disco esté lleno.-1 = File will grow until the disk is full.

268435456 = El archivo de registro aumentará de tamaño hasta un tamaño máximo de 2 TB.268435456 = Log file will grow to a maximum size of 2 TB.

En los contenedores de grupos de archivos FILESTREAM, max_size refleja el tamaño máximo del contenedor.For FILESTREAM filegroup containers, max_size reflects the maximum size of the container.

Tenga en cuenta que las bases de datos que se actualizan con un tamaño de archivo de registro ilimitado informarán de-1 para el tamaño máximo del archivo de registro.Note that databases that are upgraded with an unlimited log file size will report -1 for the maximum size of the log file.
crezcagrowth intint 0 = El archivo tiene un tamaño fijo y no puede crecer.0 = File is fixed size and will not grow.

>0 = el archivo aumentará automáticamente.>0 = File will grow automatically.

Si is_percent_growth = 0, el aumento de crecimiento es en unidades de páginas de 8 KB, redondeado a los 64 KB más próximos.If is_percent_growth = 0, growth increment is in units of 8-KB pages, rounded to the nearest 64 KB.

Si is_percent_growth = 1, el aumento de crecimiento se expresa como un porcentaje numérico entero.If is_percent_growth = 1, growth increment is expressed as a whole number percentage.
is_media_read_onlyis_media_read_only bitbit 1 = El archivo está en medios de solo lectura.1 = File is on read-only media.

0 = El archivo está en un medio de lectura y escritura.0 = File is on read-write media.
is_read_onlyis_read_only bitbit 1 = El archivo está marcado como de solo lectura.1 = File is marked read-only.

0 = El archivo está marcado como de lectura y escritura.0 = File is marked read/write.
is_sparseis_sparse bitbit 1 = El archivo es un archivo disperso.1 = File is a sparse file.

0 = El archivo no es un archivo disperso.0 = File is not a sparse file.

Para obtener más información, vea Ver el tamaño del archivo disperso de una instantánea de base de datos (Transact-SQL).For more information, see View the Size of the Sparse File of a Database Snapshot (Transact-SQL).
is_percent_growthis_percent_growth bitbit 1 = El crecimiento del archivo es un porcentaje.1 = Growth of the file is a percentage.

0 = Tamaño absoluto del crecimiento en páginas.0 = Absolute growth size in pages.
is_name_reservedis_name_reserved bitbit 1 = El nombre del archivo quitado (name o physical_name) solo se podrá volver a utilizar después de la siguiente copia de seguridad del registro.1 = Dropped file name (name or physical_name) is reusable only after the next log backup. Si se quitan archivos de una base de datos, sus nombres lógicos permanecen en estado de reserva hasta la siguiente copia de seguridad de registros.When files are dropped from a database, the logical names stay in a reserved state until the next log backup. Esta columna solo es relevante en el modelo de restauración completa y en el modelo de recuperación optimizado para cargas masivas de registros.This column is relevant only under the full recovery model and the bulk-logged recovery model.
create_lsncreate_lsn numeric(25,0)numeric(25,0) Número de flujo de registro (LSN) en el que se creó el archivo.Log sequence number (LSN) at which the file was created.
drop_lsndrop_lsn numeric(25,0)numeric(25,0) LSN en el que se quitó el archivo.LSN at which the file was dropped.

0 = El nombre de archivo no se puede volver a utilizar.0 = The file name is unavailable for reuse.
read_only_lsnread_only_lsn numeric(25,0)numeric(25,0) LSN en el que el grupo de archivos que contiene el archivo cambió de lectura/escritura a solo lectura (el cambio más reciente).LSN at which the filegroup that contains the file changed from read/write to read-only (most recent change).
read_write_lsnread_write_lsn numeric(25,0)numeric(25,0) LSN en el que el grupo de archivos que contiene el archivo cambió de solo lectura a lectura/escritura (el cambio más reciente).LSN at which the filegroup that contains the file changed from read-only to read/write (most recent change).
differential_base_lsndifferential_base_lsn numeric(25,0)numeric(25,0) Base para copias de seguridad diferenciales.Base for differential backups. Las extensiones de datos cambiadas después de este LSN se incluirán en una copia de seguridad diferencial.Data extents changed after this LSN will be included in a differential backup.
differential_base_guiddifferential_base_guid uniqueidentifieruniqueidentifier Identificador único de la copia de seguridad de base en la que se basará una copia de seguridad diferencial.Unique identifier of the base backup on which a differential backup will be based.
differential_base_timedifferential_base_time datetimedatetime Hora que corresponde a differential_base_lsn.Time corresponding to differential_base_lsn.
redo_start_lsnredo_start_lsn numeric(25,0)numeric(25,0) LSN en el que debe comenzar la siguiente puesta al día.LSN at which the next roll forward must start.

Es NULL a menos que state = RESTORING o state = RECOVERY_PENDING.Is NULL unless state = RESTORING or state = RECOVERY_PENDING.
redo_start_fork_guidredo_start_fork_guid uniqueidentifieruniqueidentifier Identificador exclusivo de la bifurcación de recuperación.Unique identifier of the recovery fork. El first_fork_guid de la siguiente copia de seguridad de registros restaurada debe coincidir con este valor.The first_fork_guid of the next log backup restored must match this value. Representa el estado actual del archivo.This represents the current state of the file.
redo_target_lsnredo_target_lsn numeric(25,0)numeric(25,0) LSN en el que se puede detener la puesta al día en línea de este archivo.LSN at which the online roll forward on this file can stop.

Es NULL a menos que state = RESTORING o state = RECOVERY_PENDING.Is NULL unless state = RESTORING or state = RECOVERY_PENDING.
redo_target_fork_guidredo_target_fork_guid uniqueidentifieruniqueidentifier Bifurcación de recuperación en que se puede recuperar el archivo.The recovery fork on which the file can be recovered. Se empareja con redo_target_lsn.Paired with redo_target_lsn.
backup_lsnbackup_lsn numeric(25,0)numeric(25,0) El LSN de los datos más recientes o de la copia de seguridad diferencial del archivo.The LSN of the most recent data or differential backup of the file.

Nota

Al quitar o volver a generar índices grandes, o al quitar o truncar tablas grandes, el Motor de base de datosDatabase Engine difiere las cancelaciones de asignación de páginas, así como sus bloqueos asociados, hasta que se confirma la transacción.When you drop or rebuild large indexes, or drop or truncate large tables, the Motor de base de datosDatabase Engine defers the actual page deallocations, and their associated locks, until after the transaction commits. Las operaciones de eliminación diferidas no liberan inmediatamente el espacio asignado.Deferred drop operations do not release allocated space immediately. Por tanto, los valores devueltos por sys.database_files inmediatamente después de quitar o truncar un objeto grande pueden no reflejar el espacio de disco real disponible.Therefore, the values returned by sys.database_files immediately after dropping or truncating a large object may not reflect the actual disk space available.

PermisosPermissions

Debe pertenecer al rol public .Requires membership in the public role. Para obtener más información, consulte Metadata Visibility Configuration.For more information, see Metadata Visibility Configuration.

EjemplosExamples

La siguiente instrucción devuelve el nombre, el tamaño de archivo y la cantidad de espacio vacío para cada archivo de base de datos.The following statement returns the name, file size, and the amount of empty space for each database file.

SELECT name, size/128.0 FileSizeInMB,
size/128.0 - CAST(FILEPROPERTY(name, 'SpaceUsed') AS int)/128.0 
   AS EmptySpaceInMB
FROM sys.database_files;

Para obtener más información sobre cómo usar SQL DatabaseSQL Database , vea determinar el tamaño de la base de datos en Azure SQL Database V12 en el blog del equipo de asesoría de clientes de SQL.For more information when using SQL DatabaseSQL Database, see Determining Database Size in Azure SQL Database V12 on the SQL Customer Advisory Team blog.

Consulte tambiénSee Also

Vistas de catálogo de archivos y bases de datos (Transact-SQL) Databases and Files Catalog Views (Transact-SQL)
Estados de archivo File States
sys.databases (Transact-SQL) sys.databases (Transact-SQL)
Sys. master_files (Transact-SQL) sys.master_files (Transact-SQL)
Archivos de base de datos y grupos de archivos Database Files and Filegroups
sys.data_spaces (Transact-SQL)sys.data_spaces (Transact-SQL)