sys.master_files (Transact-SQL)

Применимо к: даSQL Server (все поддерживаемые версии) ДаУправляемый экземпляр SQL Azure даПараллельное хранилище данных

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

Имя столбца Тип данных Описание
database_id int Идентификатор базы данных, которому принадлежит данный файл. Masterdatabase_id всегда имеет значение 1.
file_id int Идентификатор файла в базе данных. Параметр file_id первичного файла всегда имеет значение 1.
file_guid uniqueidentifier Уникальный идентификатор файла.

NULL = база данных была обновлена с более ранней версии SQL Server (допустима для SQL Server 2005 и более ранних версий).
тип tinyint Тип файла:

0 = строки.

1 = журнал.

2 = FILESTREAM.

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

4 = полнотекстовый каталог (полнотекстовые каталоги в версии, предшествующей SQL Server 2008; полнотекстовые каталоги, которые обновлены до версии или созданы в версии SQL Server 2008 и последующих, сообщают о типе файла 0).
type_desc nvarchar(60) Описание типа файла:

ROWS

LOG

FILESTREAM

FULLTEXT (полнотекстовые каталоги в версии, предшествующей SQL Server 2008).
data_space_id int Идентификатор пространства данных, которому принадлежит этот файл. Пространство данных является файловой группой.

0 = файлы журнала
name sysname Логическое имя файла в базе данных.
physical_name nvarchar(260) Имя файла в операционной системе.
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

Дополнительные сведения см. в разделе Состояния файлов.
размер; int Текущий размер файла, в 8 КБ страницах. Для моментального снимка базы данных аргумент size отражает максимальное пространство, которое моментальный снимок может использовать только для файла.

Примечание. это поле заполняется нулевым числом контейнеров FILESTREAM. Запросите представление каталога sys.database_files , чтобы получить фактический размер контейнеров FILESTREAM.
max_size int Максимальный размер файла в страницах по 8 КБ:

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

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

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

Примечание. базы данных, которые были обновлены с неограниченным размером файла журнала, будут сообщать-1 о максимальном размере файла журнала.
growth int 0 = Файл имеет фиксированный размер и не будет увеличиваться.

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

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

Если значение аргумента is_percent_growth = 1, шаг увеличения размера выражается в процентах от общего размера.
is_media_read_onlyF 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) может быть использовано для нового имени файла.

0 = имя файла, недоступно для использования.
create_lsn numeric(25,0) Регистрационный номер транзакции в журнале (LSN), на котором создан файл.
drop_lsn numeric(25,0) Номер LSN, с которым файл удален.
read_only_lsn numeric(25,0) Номер LSN, на котором файловая группа, содержащая файл, изменила тип с «для чтения и записи» на «только для чтения» (самое последнее изменение).
read_write_lsn numeric(25,0) Номер LSN, на котором файловая группа, содержащая файл, изменила тип с «только для чтения» на «для чтения и записи» (самое последнее изменение).
differential_base_time 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 самых новых данных или разностная резервная копия файла.
credential_id int Объект credential_id , sys.credentials используемый для хранения файла. Например, если выполняется SQL Server на виртуальной машине Azure, а файлы базы данных хранятся в хранилище BLOB-объектов Azure, учетные данные настраиваются с учетными данными доступа к месту хранения.

Примечание

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

Примечание

Для базы данных tempdb View sys.master_files показывает первоначальный размер базы данных tempdb. Значения используются в качестве шаблона для создания базы данных tempdb при запуске SQL Server. Таким образом, когда база данных tempdb растет, она не отражается в представлении. Чтобы получить текущий размер файлов tempdb, запросите tempdb.sys.database_files .

Разрешения

Минимальные разрешения, необходимые для просмотра соответствующих строк — CREATE DATABASE, ALTER ANY DATABASE или VIEW ANY DEFINITION.

См. также:

Представления каталогов баз данных и файлов (Transact-SQL)
Состояния файлов
sys.databases (Transact-SQL)
sys.database_files (Transact-SQL)
Файлы и файловые группы базы данных