DBCC SQLPERF (Transact-SQL)

提供所有数据库的事务日志空间使用情况统计信息。 也可以用于重置等待和闩锁的统计信息。

适用范围:SQL Server(SQL Server 2008 到当前版本)。

主题链接图标 Transact-SQL 语法约定

语法

DBCC SQLPERF 
(
     [ LOGSPACE ]
     |
          [ "sys.dm_os_latch_stats" , CLEAR ]
     |
     [ "sys.dm_os_wait_stats" , CLEAR ]
) 
     [WITH NO_INFOMSGS ]

参数

  • LOGSPACE
    返回事务日志的当前大小和用于每个数据库的日志空间的百分比。 可以使用此信息来监视事务日志中使用的空间量。

  • "sys.dm_os_latch_stats" , CLEAR
    重置闩锁统计信息。 有关详细信息,请参阅 sys.dm_os_latch_stats (Transact-SQL)

  • "sys.dm_os_wait_stats" , CLEAR
    重置等待统计信息。 有关详细信息,请参阅 sys.dm_os_wait_stats (Transact-SQL)

  • WITH NO_INFOMSGS
    取消严重级别从 0 到 10 的所有信息性消息。

结果集

下表对结果集中的列进行了说明。

列名

定义

Database Name

数据库名称,为该数据库显示日志统计信息。

Log Size (MB)

分配给日志的当前大小。 该值始终小于最初为日志空间分配的量,因为数据库引擎会保留一小部分磁盘空间,用以存放内部标头信息。

Log Space Used (%)

事务日志信息当前所占用的日志文件的百分比。

状态

日志文件的状态。 始终为 0。

注释

事务日志记录数据库中执行的每个事务。 有关详细信息,请参阅事务日志 (SQL Server)

权限

若要运行 DBCC SQLPERF(LOGSPACE),需要在服务器上拥有 VIEW SERVER STATE 权限。 若要重置等待和闩锁统计信息,需要在服务器上拥有 ALTER SERVER STATE 权限。

示例

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);

请参阅

参考

DBCC (Transact-SQL)

sp_spaceused (Transact-SQL)