共用方式為


瞭解資料庫快照集內的疏鬆檔案大小

資料庫快照集會使用一或多個*「疏鬆檔案」*來儲存資料。資料庫快照集建立期間,可以利用 CREATE DATABASE 陳述式中的檔案名稱,建立疏鬆檔案。這些檔案名稱儲存在 physical_name 資料行的 sys.master_files 中。

ms175823.note(zh-tw,SQL.90).gif附註:
sys.database_files (不管是在來源資料庫或快照集) 中,physical_name 資料行永遠會包含來源資料庫檔案的名稱。

疏鬆檔案是 NTFS 檔案系統的一項功能。一開始,疏鬆檔案未包含使用者資料,而且尚未配置要供使用者資料使用的磁碟空間。如需使用資料庫快照集中的疏鬆檔案,以及資料庫快照集如何成長的一般詳細資訊,請參閱<資料庫快照集如何運作>。

初次建立時,疏鬆檔案所佔的磁碟空間很小。隨著資料慢慢寫入疏鬆檔案,NTFS 也會逐漸配置磁碟空間。疏鬆檔案可能會成長得相當大。如果資料庫快照集用盡空間,就會標示為有疑問而且必須卸除。不過,來源資料庫不會受到影響;其上的動作可正常地繼續進行。

疏鬆檔案是以每次遞增 64 KB 的方式成長;因此磁碟上的疏鬆檔案大小永遠是 64 KB 的倍數。最後遞增的 64-KB 會保留 1 到 8 個 8-KB 頁面,依據從來源資料庫複製的頁面數而定。這代表平均而言,疏鬆檔案大小會稍微超過頁面實際填入的空間。

  • 若要查明疏鬆檔案的實際大小
    若想知道磁碟上目前使用之每個疏鬆檔案的位元組數,您可以使用 fn_virtualfilestats 系統資料表值函數,傳回 BytesOnDisk 資料行內檔案目前的位元組數。此函數使用 database_idfile_id 的值。快照集的資料庫識別碼與其疏鬆檔案的檔案識別碼都會顯示在 sys.master_files 目錄檢視中。如需詳細資訊,請參閱<sys.master_files (Transact-SQL)>和<fn_virtualfilestats (Transact-SQL)>。
    或者,以滑鼠右鍵按一下 Microsoft Windows 中的檔案,按一下 [內容],並查看 [磁碟大小] 的值,來查看疏鬆檔案使用的磁碟空間。
  • 若要查明疏鬆檔案的大小上限
    疏鬆檔案的成長大小上限,為建立快照集時對應來源資料庫檔案的大小。若要知道此大小,您可以使用以下其中一種方式:
    • 使用 Windows dir 命令。
    • 選取疏鬆檔案,在 Windows 中開啟該檔案的 [內容] 對話方塊,並查看 [大小] 的值。
    • 從資料庫快照集的 sys.database_files 或從 sys.master_files 選取 size 資料行。在 SQL 頁面中,sys.database_filessys.master_files 中的 size 資料行會反應出快照集可以使用的空間上限;此數值相當於 Windows 的 [大小] 欄位,只不過它代表檔案中的 SQL 頁面數;以位元組計算的大小如下:
      ( number_of_pages * 8192)

請參閱

概念

資料庫快照集
資料庫快照集如何運作

其他資源

fn_virtualfilestats (Transact-SQL)
sys.database_files (Transact-SQL)
sys.master_files (Transact-SQL)

說明及資訊

取得 SQL Server 2005 協助