sys.master_files (Transact-SQL)
適用対象:SQL Server
Azure SQL Managed Instance
Analytics Platform System (PDW)
master データベースに格納されているデータベースのファイルごとに 1 行のデータを保持します。 これは、単一のシステム全体のビューです。
列名 | データ型 | 説明 |
---|---|---|
database_id | int | このファイルが適用されるデータベースの ID。 masterdatabase_idは常に 1 です。 |
file_id | int | データベース内のファイルの ID。 プライマリ ファイルの file_id は常に 1 です。 |
file_guid | uniqueidentifier | ファイルの一意識別子。 NULL = データベースが以前のバージョンの SQL Server からアップグレードされました (SQL Server 2005 以前の場合は有効)。 |
型 | tinyint | ファイルの種類です。 0 = 行。 1 = ログ 2 = FILESTREAM 3 = 単に情報を示すためだけに特定されます。 サポートされていません。 将来の互換性は保証されません。 4 = フルテキスト (2008 (10.0.x) SQL Serverより前のフルテキスト カタログ)、SQL Server 2008 (10.0.x) 以降にアップグレードまたは作成されたフルテキスト カタログは、ファイルの種類 0 を報告します。 |
type_desc | nvarchar(60) | ファイルの種類の説明: ROWS LOG FILESTREAM FULLTEXT (SQL Server 2008 (10.0.x) より前のフルテキスト カタログ)。 |
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 コンテナーの場合、このフィールドはゼロとして設定されます。 sys.database_files カタログ ビューに対して、FILESTREAM コンテナーの実際のサイズを照会します。 |
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 = ファイルはスパース ファイルではありません。 詳しくは、「データベース スナップショットのスパース ファイルのサイズを表示する方法 (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。 |
credential_id | int | credential_id ファイルの格納に使用される fromsys.credentials 。 たとえば、SQL Serverが Azure 仮想マシンで実行されていて、データベース ファイルがAzure Blob Storageに格納されている場合、資格情報はストレージの場所へのアクセス資格情報で構成されます。 |
注意
大きなインデックスを削除または再構築したり、大きなテーブルに対する削除や切り詰めを行うと、トランザクションがコミットされるまで、データベース エンジンにより、実際のページの割り当て解除と、それらに関連付けられたロックが遅延されます。 遅延された削除操作では、割り当てられた領域は直ちに解放されません。 そのため、ラージ オブジェクトを削除または切り捨てた後すぐに sys.master_files から返される値は、実際の使用可能ディスク領域を表していない場合があります。
注意
tempdb の場合、ビュー sys.master_filesに初期 tempdb サイズが表示されます。 値は、SQL Serverの起動時に tempdb を作成するためのテンプレートとして使用されます。 そのため、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)
データベース ファイルとファイル グループ
フィードバック
フィードバックの送信と表示