次の方法で共有


sys.master_files (Transact-SQL)

master データベースに保存されているデータベースのファイルごとに 1 行のデータを格納します。 これは、単一のシステム全体のビューです。

適用対象: SQL Server (SQL Server 2008 から現在のバージョンまで)

列名

データ型

説明

database_id

int

このファイルが適用されるデータベースの ID です。 master database_id は常に 1 です。

file_id

int

データベース内のファイルの ID です。 プライマリ file_id は常に 1 です。

file_guid

uniqueidentifier

ファイルの一意識別子です。

NULL = データベースは SQL Server の旧バージョンからアップグレードされています。

type

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

このファイルが属するデータ領域の ID です。 データ領域はファイル グループです。

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

詳細については、「ファイルの状態」を参照してください。

size

int

現在のファイル サイズ (8 KB ページ単位) です。 データベース スナップショットの場合、size は、スナップショットがファイルに対して使用する中で最大の領域を表します。

注意

FILESTREAM コンテナーの場合は、このフィールドに 0 が入力されます。FILESTREAM コンテナーの実際のサイズについては、sys.database_files カタログ ビューに対してクエリを実行してください。

max_size

int

最大ファイル サイズ (8 KB ページ単位) です。

0 = 拡張は許可されません。

-1 = ディスクがいっぱいになるまでファイル サイズが拡張します。

268435456 = ログ ファイルは最大 2 TB まで拡張します。

注意

ログ ファイルのサイズを制限せずにアップグレードしたデータベースでは、ログ ファイルの最大サイズが -1 と報告されます。

growth

int

0 = ファイルのサイズは固定されており、容量を追加することはできません。

>0 = ファイルは自動的に拡張されます。

is_percent_growth が 0 の場合、拡張増分は 8 KB ページ単位で表され、最も近い 64 KB 単位の値に切り上げられます。

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_lsn

numeric(25,0)

差分バックアップのベースです。 この LSN の後に変更されたデータ エクステントが差分バックアップに含まれます。

differential_base_guid

uniqueidentifier

差分バックアップの基になるベース バックアップの一意識別子です。

differential_base_time

datetime

differential_base_lsn に対応する時間です。

redo_start_lsn

numeric(25,0)

次のロールフォワードを開始する必要がある LSN です。

state = RESTORING または state = RECOVERY_PENDING でない場合は NULL です。

redo_start_fork_guid

uniqueidentifier

復旧分岐の一意識別子です。 復元される次のログ バックアップの first_fork_guid は、この値と一致する必要があります。 これは、コンテナーの現在の状態を表します。

redo_target_lsn

numeric(25,0)

このファイルでのオンライン ロールフォワードが停止できる LSN です。

state = RESTORING または state = RECOVERY_PENDING でない場合は NULL です。

redo_target_fork_guid

uniqueidentifier

コンテナーを復元できる復旧分岐です。 redo_target_lsn と組み合わせて使用します。

backup_lsn

numeric(25,0)

ファイルの最新データまたは差分バックアップの LSN です。

注意

大きなインデックスを削除または再構築した場合や、大きなテーブルの削除または切り捨てを行った場合、データベース エンジンは実際のページ割り当て解除とその関連付けられたロックを、トランザクションがコミットされるまで遅延します。削除操作が延期された場合、割り当てられた領域は、すぐには解放されません。このため、ラージ オブジェクトを削除するか切り捨てた直後に sys.master_files から返される値は、実際に使用できるディスク領域を反映していないことがあります。

権限

対応する行を参照するには、少なくとも CREATE DATABASE、ALTER ANY DATABASE、または VIEW ANY DEFINITION 権限が必要です。

関連項目

参照

データベースとファイルのカタログ ビュー (Transact-SQL)

sys.databases (Transact-SQL)

sys.database_files (Transact-SQL)

概念

ファイルの状態

データベース ファイルとファイル グループ