sys.database_files (Transact-SQL)

Содержит по одной строке для каждого из файлов базы данных, в которых она хранится. Это представление на каждую базу данных.

Имя столбца

Тип данных

Описание

file_id

int

Идентификатор файла в базе данных.

file_guid

uniqueidentifier

Идентификатор GUID файла.

NULL = база данных обновлена с предыдущей версии SQL Server.

type

tinyint

Тип файла:

0 = строки (включает файлы полнотекстовых каталогов, которые обновляются или создаются в SQL Server 2012)

1 = Журнал.

2 = FILESTREAM.

3 = Указано только в ознакомительных целях. Не поддерживается. Совместимость с будущими версиями не гарантируется.

4 = полнотекстовый (полнотекстовые каталоги с датой, более ранней, чем SQL Server 2012; полнотекстовые каталоги, которые были обновлены или созданы в SQL Server 2012, сообщат о типе файлов 0).

type_desc

nvarchar(60)

Описание типа файла:

ROWS (включает файлы полнотекстовых каталогов, которые обновляются или создаются в SQL Server 2012).

LOG

FILESTREAM

FULLTEXT (полнотекстовые каталоги с датой, более ранней, чем SQL Server 2012)

data_space_id

int

Значение может быть больше или равно 0. Значение, равное 0, представляет файл журнала базы данных, а значение больше 0 представляет идентификатор файловой группы, в которой хранится этот файл данных.

name

sysname

Логическое имя файла в базе данных.

physical_name

nvarchar(260)

Имя файла в операционной системе. Если база данных размещается во вторичной реплике для чтения AlwaysOn, то параметр physical_name указывает расположение файла базы данных первичной реплики. Чтобы получить правильное расположение файла базы данных вторичной реплики для чтения, запросите представление sys.sysaltfiles.

state

tinyint

Состояние файла:

0 = ONLINE

1 = RESTORING

2 = RECOVERING

3 = RECOVERY_PENDING

4 = SUSPECT

5 = Указано только в ознакомительных целях. Не поддерживается. Совместимость с будущими версиями не гарантируется.

6 = OFFLINE

7 = DEFUNCT

state_desc

nvarchar(60)

Описание состояния файла:

ONLINE

RESTORING

RECOVERING

RECOVERY_PENDING

SUSPECT

OFFLINE

DEFUNCT

Дополнительные сведения см. в разделе Состояния файла.

size

int

Текущий размер файла в страницах по 8 КБ.

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

Для моментального снимка базы данных аргумент size показывает максимальное пространство, которое моментальный снимок может использовать для файла.

Для контейнеров файловых групп FILESTREAM значение size отражает текущий размер контейнера.

max_size

int

Максимальный размер файла в страницах по 8 КБ:

0 = увеличение размера запрещено.

-1 = размер файла может увеличиваться до полного заполнения диска.

268435456 = Файл журнала может увеличиваться до 2 ТБ.

ПримечаниеПримечание

Базы данных, обновляемые с помощью файла журнала неограниченного размера, в качестве максимального размера файла журнала возвращают -1.

Для контейнеров файловых групп FILESTREAM значение max_size отражает максимальный размер контейнера.

growth

int

0 = файл имеет фиксированный размер и не будет увеличиваться.

>0 = размер файла будет увеличиваться автоматически.

Если аргумент is_percent_growth имеет значение 0, шаг роста измеряется в страницах по 8 КБ, округленных до ближайших 64 КБ.

Если аргумент is_percent_growth = 1, шаг роста размера выражается в целых процентах.

is_media_read_only

bit

1 = файл находится на носителе только для чтения.

0 = файл размещен на носителе для чтения-записи.

is_read_only

bit

1 = файл помечен как файл только для чтения.

0 = файл помечен для чтения-записи.

is_sparse

bit

1 = разреженный файл.

0 = неразреженный файл.

Дополнительные сведения см. в разделе Просмотр размера разреженного файла снимка базы данных (Transact-SQL).

is_percent_growth

bit

1 = размер файла увеличивается в процентах.

0 = абсолютное увеличение размера в страницах.

is_name_reserved

bit

1 = имя удаленного файла (name или physical_name) доступно для использования только после следующего резервного копирования журнала. После того как файлы удалены из базы данных, логические имена остаются в зарезервированном состоянии до следующего резервного копирования журнала. Этот столбец является важным только в случае использования модели полного восстановления и модели восстановления с неполным протоколированием.

create_lsn

numeric(25,0)

Регистрационный номер транзакции в журнале (LSN), на котором создан файл.

drop_lsn

numeric(25,0)

Номер LSN, с которым файл удален.

0 = имя файла недоступно для повторного использования.

read_only_lsn

numeric(25,0)

Номер LSN, на котором файловая группа, содержащая файл, изменила тип с «для чтения и записи» на «только для чтения» (самое последнее изменение).

read_write_lsn

numeric(25,0)

Номер LSN, на котором файловая группа, содержащая файл, изменила тип с «только для чтения» на «для чтения и записи» (самое последнее изменение).

differential_base_lsn

numeric(25,0)

Основа для разностных резервных копий. Экстенты данных, измененных после того, как этот номер LSN будет включен в разностную резервную копию.

differential_base_guid

uniqueidentifier

Уникальный идентификатор базовой резервной копии, на которой будет основываться разностная резервная копия.

differential_base_time

datetime

Время, соответствующее differential_base_lsn.

redo_start_lsn

numeric(25,0)

Номер LSN, с которого должен начаться следующий накат.

Равно NULL, за исключением случаев, когда значение аргумента state = RESTORING или значение аргумента state = RECOVERY_PENDING.

redo_start_fork_guid

uniqueidentifier

Уникальный идентификатор точки вилки восстановления. Значение аргумента first_fork_guid следующей восстановленной резервной копии журнала должно соответствовать этому значению. Представляет текущее состояние файла.

redo_target_lsn

numeric(25,0)

Номер LSN, на котором накат в режиме «в сети» по данному файлу может остановиться.

Равно NULL, за исключением случаев, когда значение аргумента state = RESTORING или значение аргумента state = RECOVERY_PENDING.

redo_target_fork_guid

uniqueidentifier

Вилка восстановления, на которой файл может быть восстановлен. Используется в паре с redo_target_lsn.

backup_lsn

numeric(25,0)

Номер LSN самых новых данных или разностная резервная копия файла.

ПримечаниеПримечание

При удалении или перестройке больших индексов либо удалении или усечении больших таблиц компонент Компонент Database Engine откладывает фактическое освобождение страниц и связанных блокировок до момента фиксации транзакции. Отложенные операции удаления не освобождают выделенное место немедленно. Поэтому значения, возвращаемые процедурой sys.database_files сразу после удаления или усечения большого объекта, могут не отражать реальный объем доступного места на диске.

Разрешения

Необходимо членство в роли public. Дополнительные сведения см. в разделе Настройка видимости метаданных.

См. также

Справочник

Представления каталогов баз данных и файлов (Transact-SQL)

sys.databases (Transact-SQL)

sys.master_files (Transact-SQL)

sys.data_spaces (Transact-SQL)

Основные понятия

Состояния файла

Файлы и файловые группы базы данных