sys.master_files (Transact-SQL)
適用対象: SQL Server Azure SQL Managed Instance Analytics Platform System (PDW)
master
データベースに格納されているデータベースのファイルごとの行を格納します。 sys.master_files
は、単一のシステム全体のビューです。
列名 | データ型 | 説明 |
---|---|---|
database_id |
int | このファイルが適用されるデータベースの ID。 master データベースのdatabase_id は常に1 。 |
file_id |
int | データベース内のファイルの ID。 プライマリ file_id は常に 1 。 |
file_guid |
uniqueidentifier | ファイルを表す一意の識別子です。NULL = データベースは以前のバージョンの SQL Server からアップグレードされました (SQL Server 2005 (9.x) 以前のバージョンに対して有効)。 |
type |
tinyint | ファイルの種類です。0 = 行1 = ログ2 = FILESTREAM3 = 情報提供のみを目的として識別されます。 サポートされていません。 将来の互換性は保証されません。4 = フルテキスト (SQL Server 2008 (10.0.x) より前のフルテキスト カタログ、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 コンテナーの場合、このフィールドには 0 が設定されます。 |
max_size |
int | 最大ファイル サイズ (8 KB ページ単位)。-1 = ディスクがいっぱいになるまでファイルが拡張されます。268435456 = ログ ファイルは最大サイズの 2 TB に拡張されます。注: ログ ファイルの最大サイズに対して、無制限のログ ファイル サイズ レポート -1 でアップグレードされたデータベース。注: max_size = -1 と growth = 0 場合、拡張は許可されません。 |
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 です。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 | ファイルの格納に使用sys.credentials からのcredential_id 。 たとえば、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
です。