sys.dm_io_virtual_file_stats (Transact-SQL)
傳回資料和記錄檔的 I/O 統計資料。 這個動態管理檢視會取代 fn_virtualfilestats 函數。
語法
sys.dm_io_virtual_file_stats (
{ database_id | NULL }
, { file_id | NULL }
)
引數
database_id | NULL
資料庫的識別碼。 database_id 是 int,沒有預設值。 資料庫的識別碼或 NULL 都是有效的輸入。 如果指定 NULL,則會傳回 SQL Server 執行個體中所有的資料庫。可以指定內建函數 DB_ID。 在不指定資料庫名稱的情況下使用 DB_ID 時,目前資料庫的相容性層級必須是 90。
file_id | NULL
檔案識別碼。 file_id 是 int,沒有預設值。 有效輸入是檔案的識別碼或 NULL。 如果指定 NULL,則會傳回資料庫中所有的檔案。您可以指定內建函數 FILE_IDEX,並且參考目前資料庫中的一個檔案。
傳回的資料表
資料行名稱 |
資料類型 |
說明 |
---|---|---|
database_id |
smallint |
資料庫的識別碼。 |
file_id |
smallint |
檔案的識別碼。 |
sample_ms |
int |
自電腦啟動之後的毫秒數。 這個資料行可用來比較這個函數的不同輸出。 |
num_of_reads |
bigint |
對檔案發出的讀取數。 |
num_of_bytes_read |
bigint |
這個檔案讀取的總位元組數。 |
io_stall_read_ms |
bigint |
使用者等候在檔案發出讀取的總時間 (以毫秒為單位)。 |
num_of_writes |
bigint |
這個檔案所進行的寫入數。 |
num_of_bytes_written |
bigint |
寫入檔案的總位元組數。 |
io_stall_write_ms |
bigint |
使用者等候檔案完成寫入的總時間 (以毫秒為單位)。 |
io_stall |
bigint |
使用者等候檔案完成 I/O 的總時間 (以毫秒為單位)。 |
size_on_disk_bytes |
bigint |
該檔案在磁碟上所用的位元組數。 如果是疏鬆檔案,這個數字就是資料庫快照集在磁碟上所用的實際位元組數。 |
file_handle |
varbinary |
這個檔案的 Windows 檔案控制代碼。 |
權限
需要 VIEW SERVER STATE 權限。 如需詳細資訊,請參閱<動態管理檢視和函數 (Transact-SQL)>。
範例
下列範例會傳回 AdventureWorks2012 資料庫中記錄檔的統計資料。
SELECT * FROM sys.dm_io_virtual_file_stats(DB_ID(N'AdventureWorks2012'), 2);
GO
請參閱
參考
I/O 相關的動態管理檢視和函數 (Transact-SQL)