DBCC SQLPERF (Transact-SQL)
適用於:SQL Server Azure SQL 資料庫 Azure SQL 受控執行個體
為所有資料庫提供交易記錄空間使用量的統計資料。 在 SQL Server 中,其可以用來重設等候及閂鎖統計資料。
適用於:SQL Server 2008 (10.0.x) 和更新版本,以及 SQL Database (在某些區域為預覽版)
語法
DBCC SQLPERF
(
[ LOGSPACE ]
| [ "sys.dm_os_latch_stats" , CLEAR ]
| [ "sys.dm_os_wait_stats" , CLEAR ]
)
[ WITH NO_INFOMSGS ]
引數
LOGSPACE
傳回目前交易記錄大小以及用於每一個資料庫的記錄空間百分比。 使用這些資訊可以監視交易記錄中所用的空間量。
重要
如需從 SQL Server 2012 (11.x) 起有關交易記錄空間使用量資訊的詳細資訊,請參閱本主題中的備註一節。
"sys.dm_os_latch_stats", CLEAR
重設閂鎖統計資料。 如需詳細資訊,請參閱 sys.dm_os_latch_stats (Transact-SQL)。 SQL Database 中不提供此選項。
"sys.dm_os_wait_stats", CLEAR
重設等候統計資料。 如需詳細資訊,請參閱 sys.dm_os_wait_stats (Transact-SQL)。 SQL Database 中不提供此選項。
WITH NO_INFOMSGS
抑制所有嚴重性層級在 0 到 10 的參考用訊息。
結果集
下表描述結果集中的資料行。
資料行名稱 | 定義 |
---|---|
Database Name | 顯示記錄統計資料的資料庫名稱。 |
記錄大小 (MB) | 目前配置給記錄的大小。 這個值一定會比原先配置給記錄空間的數量小,因為資料庫引擎會將少量磁碟空間保留給內部標頭資訊。 |
所用的記錄空間 (%) | 記錄檔目前使用於儲存交易記錄資訊的百分比。 |
狀態 | 記錄檔的狀態。 一律是 0。 |
備註
從 SQL Server 2012 (11.x) 開始,請使用 sys.dm_db_log_space_usage DMV 取代 DBCC SQLPERF(LOGSPACE)
,來傳回每個資料庫交易記錄的空間使用量資訊。
交易記錄會記錄資料庫中所做的每一筆交易。 如需詳細資訊,請參閱交易記錄 (SQL Server) 和 SQL Server 交易記錄架構與管理指南。
權限
SQL Server 需要伺服器上的 VIEW SERVER STATE 權限,以執行 DBCC SQLPERF(LOGSPACE)
。 若要重設等候和閂鎖統計資料,需要伺服器的 ALTER SERVER STATE
權限。
SQL Database 進階層和業務關鍵層需要資料庫中的 VIEW DATABASE STATE 權限。 SQL Database 標準、基本和一般用途層需要 SQL Database 管理帳戶。 不支援重設等候和閂鎖統計資料。
範例
A. 顯示所有資料庫的記錄空間資訊
下列範例會為 SQL Server 執行個體中包含的所有資料庫顯示 LOGSPACE
資訊。
DBCC SQLPERF (LOGSPACE);
GO
結果集如下所示。
Database Name Log Size (MB) Log Space Used (%) Status
------------- ------------- ------------------ -----------
master 3.99219 14.3469 0
tempdb 1.99219 1.64216 0
model 1.0 12.7953 0
msdb 3.99219 17.0132 0
AdventureWorks 19.554688 17.748701 0
B. 重設等候統計資料
下列範例會重設 SQL Server 執行個體的等候統計資料。
DBCC SQLPERF ("sys.dm_os_wait_stats", CLEAR);