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

Применимо к:Applies to: даSQL ServerSQL Server (все поддерживаемые версии) yesSQL ServerSQL Server (all supported versions) ДаБаза данных SQL AzureAzure SQL DatabaseYesБаза данных SQL AzureAzure SQL Database ДаУправляемый экземпляр SQL AzureAzure SQL Managed InstanceYesУправляемый экземпляр SQL AzureAzure SQL Managed Instance даAzure Synapse AnalyticsAzure Synapse AnalyticsyesAzure Synapse AnalyticsAzure Synapse Analytics даПараллельное хранилище данныхParallel Data WarehouseyesПараллельное хранилище данныхParallel Data WarehouseПрименимо к:Applies to: даSQL ServerSQL Server (все поддерживаемые версии) yesSQL ServerSQL Server (all supported versions) ДаБаза данных SQL AzureAzure SQL DatabaseYesБаза данных SQL AzureAzure SQL Database ДаУправляемый экземпляр SQL AzureAzure SQL Managed InstanceYesУправляемый экземпляр SQL AzureAzure SQL Managed Instance даAzure Synapse AnalyticsAzure Synapse AnalyticsyesAzure Synapse AnalyticsAzure Synapse Analytics даПараллельное хранилище данныхParallel Data WarehouseyesПараллельное хранилище данныхParallel Data Warehouse

Содержит по одной строке для каждого из файлов базы данных, в которых она хранится.Contains a row per file of a database as stored in the database itself. Это представление на каждую базу данных.This is a per-database view.

Имя столбцаColumn name Тип данныхData type ОписаниеDescription
file_idfile_id intint Идентификатор файла в базе данных.ID of the file within database.
file_guidfile_guid uniqueidentifieruniqueidentifier Идентификатор GUID файла.GUID for the file.

NULL = база данных была обновлена с более ранней версии SQL ServerSQL Server (допустима для SQL Server 2005 и более ранних версий).NULL = Database was upgraded from an earlier version of SQL ServerSQL Server (Valid for SQL Server 2005 and earlier).
typetype tinyinttinyint Тип файла:File type:

0 = строки0 = Rows

1 = журнал.1 = Log

2 = FILESTREAM.2 = FILESTREAM

3 = Указано только в ознакомительных целях.Identified for informational purposes only. Не поддерживается.Not supported. Совместимость с будущими версиями не гарантируется.Future compatibility is not guaranteed.3 = Указано только в ознакомительных целях.Identified for informational purposes only. Не поддерживается.Not supported. Совместимость с будущими версиями не гарантируется.Future compatibility is not guaranteed.

4 = полнотекстовый4 = Full-text
type_desctype_desc nvarchar(60)nvarchar(60) Описание типа файла:Description of the file type:

ROWSROWS

LOGLOG

FILESTREAMFILESTREAM

FULLTEXTFULLTEXT
data_space_iddata_space_id intint Значение может быть больше или равно 0.Value can be 0 or greater than 0. Значение, равное 0, представляет файл журнала базы данных, а значение больше 0 представляет идентификатор файловой группы, в которой хранится этот файл данных.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 Логическое имя файла в базе данных.Logical name of the file in the database.
physical_namephysical_name nvarchar(260)nvarchar(260) Имя файла в операционной системе.Operating-system file name. Если база данных размещена на вторичной реплике, доступной для чтенияAlwaysOn, physical_name указывает расположение файла базы данных первичной реплики.If the database is hosted by an AlwaysOn readable secondary replica, physical_name indicates the file location of the primary replica database. Для правильного расположения файла базы данных-получателя, доступной для чтения, запросите sys.sysалтфилес.For the correct file location of a readable secondary database, query sys.sysaltfiles.
statestate tinyinttinyint Состояние файла:File state:

0 = ONLINE0 = ONLINE

1 = RESTORING1 = RESTORING

2 = RECOVERING2 = RECOVERING

3 = RECOVERY_PENDING3 = RECOVERY_PENDING

4 = SUSPECT4 = SUSPECT

5 = Указано только в ознакомительных целях.Identified for informational purposes only. Не поддерживается.Not supported. Совместимость с будущими версиями не гарантируется.Future compatibility is not guaranteed.5 = Указано только в ознакомительных целях.Identified for informational purposes only. Не поддерживается.Not supported. Совместимость с будущими версиями не гарантируется.Future compatibility is not guaranteed.

6 = OFFLINE6 = OFFLINE

7 = DEFUNCT7 = DEFUNCT
state_descstate_desc nvarchar(60)nvarchar(60) Описание состояния файла:Description of the file state:

ONLINEONLINE

RESTORINGRESTORING

RECOVERINGRECOVERING

RECOVERY_PENDINGRECOVERY_PENDING

SUSPECTSUSPECT

OFFLINEOFFLINE

DEFUNCTDEFUNCT

Дополнительные сведения см. в разделе Состояния файлов.For more information, see File States.
sizesize intint Текущий размер файла в страницах по 8 КБ.Current size of the file, in 8-KB pages.

0 = не определено.0 = Not applicable

Для моментального снимка базы данных аргумент size отражает максимальное пространство, которое моментальный снимок может использовать только для файла.For a database snapshot, size reflects the maximum space that the snapshot can ever use for the file.

Для контейнеров файловой группы FILESTREAM размер отражает текущий используемый размер контейнера.For FILESTREAM filegroup containers, size reflects the current used size of the container.
max_sizemax_size intint Максимальный размер файла в страницах по 8 КБ:Maximum file size, in 8-KB pages:

0 = Увеличение размера запрещено.0 = No growth is allowed.

-1 = размер файла может увеличиваться до полного заполнения диска.-1 = File will grow until the disk is full.

268435456 = файл журнала может увеличиваться до 2 ТБ.268435456 = Log file will grow to a maximum size of 2 TB.

Для контейнеров файловой группы FILESTREAM max_size отражает максимальный размер контейнера.For FILESTREAM filegroup containers, max_size reflects the maximum size of the container.

Обратите внимание, что базы данных, которые были обновлены с неограниченным размером файла журнала, будут сообщать-1 о максимальном размере файла журнала.Note that databases that are upgraded with an unlimited log file size will report -1 for the maximum size of the log file.
квотgrowth intint 0 = Файл имеет фиксированный размер и не будет увеличиваться.0 = File is fixed size and will not grow.

>0 = файл будет автоматически расти.>0 = File will grow automatically.

Если значение is_percent_growth = 0, шаг увеличения размера указывается в единицах по 8 КБ, с округлением до ближайших 64 КБ.If is_percent_growth = 0, growth increment is in units of 8-KB pages, rounded to the nearest 64 KB.

Если значение аргумента is_percent_growth = 1, шаг увеличения размера выражается в процентах от общего размера.If is_percent_growth = 1, growth increment is expressed as a whole number percentage.
is_media_read_onlyis_media_read_only bitbit 1 = файл находится на носителе только для чтения.1 = File is on read-only media.

0 = файл размещен на носителе для чтения-записи.0 = File is on read-write media.
is_read_onlyis_read_only bitbit 1 = файл помечен как файл только для чтения.1 = File is marked read-only.

0 = файл помечен для чтения-записи.0 = File is marked read/write.
is_sparseis_sparse bitbit 1 = разреженный файл.1 = File is a sparse file.

0 = неразреженный файл.0 = File is not a sparse file.

Дополнительные сведения см. в разделе Просмотр размера разреженного файла снимка базы данных (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 = размер файла увеличивается в процентах.1 = Growth of the file is a percentage.

0 = абсолютное увеличение размера в страницах.0 = Absolute growth size in pages.
is_name_reservedis_name_reserved bitbit 1 = имя удаленного файла (name или physical_name) доступно для использования только после следующего резервного копирования журнала.1 = Dropped file name (name or physical_name) is reusable only after the next log backup. После того как файлы удалены из базы данных, логические имена остаются в зарезервированном состоянии до следующего резервного копирования журнала.When files are dropped from a database, the logical names stay in a reserved state until the next log backup. Этот столбец является важным только в случае использования модели полного восстановления и модели восстановления с неполным протоколированием.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) Регистрационный номер транзакции в журнале (LSN), на котором создан файл.Log sequence number (LSN) at which the file was created.
drop_lsndrop_lsn numeric(25,0)numeric(25,0) Номер LSN, с которым файл удален.LSN at which the file was dropped.

0 = имя файла недоступно для повторного использования.0 = The file name is unavailable for reuse.
read_only_lsnread_only_lsn numeric(25,0)numeric(25,0) Номер LSN, на котором файловая группа, содержащая файл, изменила тип с «для чтения и записи» на «только для чтения» (самое последнее изменение).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, на котором файловая группа, содержащая файл, изменила тип с «только для чтения» на «для чтения и записи» (самое последнее изменение).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 for differential backups. Экстенты данных, измененных после того, как этот номер LSN будет включен в разностную резервную копию.Data extents changed after this LSN will be included in a differential backup.
differential_base_guiddifferential_base_guid uniqueidentifieruniqueidentifier Уникальный идентификатор базовой резервной копии, на которой будет основываться разностная резервная копия.Unique identifier of the base backup on which a differential backup will be based.
differential_base_timedifferential_base_time datetimedatetime Время, соответствующее differential_base_lsn.Time corresponding to differential_base_lsn.
redo_start_lsnredo_start_lsn numeric(25,0)numeric(25,0) Номер LSN, с которого должен начаться следующий накат.LSN at which the next roll forward must start.

Равно NULL за исключением случаев, когда значение аргумента state = RESTORING или значение аргумента state = RECOVERY_PENDING.Is NULL unless state = RESTORING or state = RECOVERY_PENDING.
redo_start_fork_guidredo_start_fork_guid uniqueidentifieruniqueidentifier Уникальный идентификатор точки вилки восстановления.Unique identifier of the recovery fork. Значение аргумента first_fork_guid следующей восстановленной резервной копии журнала должно совпадать с этим значением.The first_fork_guid of the next log backup restored must match this value. Представляет текущее состояние файла.This represents the current state of the file.
redo_target_lsnredo_target_lsn numeric(25,0)numeric(25,0) Номер LSN, на котором накат в режиме «в сети» по данному файлу может остановиться.LSN at which the online roll forward on this file can stop.

Равно NULL за исключением случаев, когда значение аргумента state = RESTORING или значение аргумента state = RECOVERY_PENDING.Is NULL unless state = RESTORING or state = RECOVERY_PENDING.
redo_target_fork_guidredo_target_fork_guid uniqueidentifieruniqueidentifier Вилка восстановления, на которой файл может быть восстановлен.The recovery fork on which the file can be recovered. Используется в паре с redo_target_lsn.Paired with redo_target_lsn.
backup_lsnbackup_lsn numeric(25,0)numeric(25,0) Номер LSN самых новых данных или разностная резервная копия файла.The LSN of the most recent data or differential backup of the file.

Примечание

При удалении или перестройке больших индексов либо удалении или усечении больших таблиц компонент Компонент Database EngineDatabase Engine откладывает фактическое освобождение страниц и связанных блокировок до момента фиксации транзакции.When you drop or rebuild large indexes, or drop or truncate large tables, the Компонент Database EngineDatabase Engine defers the actual page deallocations, and their associated locks, until after the transaction commits. Отложенные операции удаления не освобождают выделенное место немедленно.Deferred drop operations do not release allocated space immediately. Следовательно, значения, полученные из sys.database_files сразу после удаления или усечения больших объектов, могут не соответствовать фактическому размеру свободного места на диске.Therefore, the values returned by sys.database_files immediately after dropping or truncating a large object may not reflect the actual disk space available.

РазрешенияPermissions

Необходимо быть членом роли public.Requires membership in the public role. Дополнительные сведения см. в разделе Metadata Visibility Configuration.For more information, see Metadata Visibility Configuration.

ПримерыExamples

Следующая инструкция возвращает имя, размер файла и объем пустого пространства для каждого файла базы данных.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;

Дополнительные сведения об использовании см База данных SQLSQL Database . в разделе Определение размера базы данных в базе данных SQL Azure 12 в блоге группы консультирования клиентов SQL.For more information when using База данных SQLSQL Database, see Determining Database Size in Azure SQL Database V12 on the SQL Customer Advisory Team blog.

См. также:See Also

Представления каталогов баз данных и файлов (Transact-SQL) Databases and Files Catalog Views (Transact-SQL)
Состояния файлов File States
sys.databases (Transact-SQL) sys.databases (Transact-SQL)
sys.master_files (Transact-SQL) sys.master_files (Transact-SQL)
Database Files and Filegroups Database Files and Filegroups
sys.data_spaces (Transact-SQL)sys.data_spaces (Transact-SQL)