sys.database_files (Transact-SQL)
データベース自体に保存されているデータベースのファイルごとに 1 行のデータを格納します。これはデータベース単位のビューです。
列名
データ型
説明
file_id
int
データベース内にあるファイルの ID。
file_guid
uniqueidentifier
ファイルの GUID。
NULL = データベースは、以前のバージョンの Microsoft SQL Server からアップグレードされました。
type
tinyint
ファイルの種類。
0 = 行
1 = ログ
2 = 予約済み
3 = 予約済み
4 = フルテキスト
type_desc
nvarchar(60)
ファイルの種類の説明。
ROWS
LOG
FULLTEXT
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 ページ単位)。
0 = 適用なし
データベース スナップショットの場合、size は、スナップショットがファイルに対して使用する最大の領域を表します。
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_only
bit
1 = ファイルは読み取り専用メディアにあります。
0 = ファイルは読み取り/書き込みメディアにあります。
is_read_only
bit
1 = ファイルは読み取り専用としてマークされています。
0 = ファイルは読み取り/書き込み用としてマークされています。
is_sparse
bit
1 = ファイルはスパース ファイルです。
0 = ファイルはスパース ファイルではありません。
詳細については、「データベース スナップショットのスパース ファイルのサイズについて」を参照してください。
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。
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.database_files を実行して返された値は、実際に使用できるディスク領域を反映していないことがあります。遅延割り当ての詳細については、「ラージ オブジェクトの削除と再構築」を参照してください。 |
参照
関連項目
データベースとファイルのカタログ ビュー (Transact-SQL)
sys.databases (Transact-SQL)
sys.master_files (Transact-SQL)
sys.data_spaces (Transact-SQL)