DBCC SQLPERF (Transact-SQL)

Aplica-se a:SQL ServerBanco de Dados SQL do AzureInstância Gerenciada de SQL do Azure

Fornece estatísticas de uso do espaço do log de transações para todos os bancos de dados. No SQL Server, ele também pode ser usado para redefinir as estatísticas de espera e trava.

Aplica-se a: SQL Server 2008 (10.0.x) e versões posteriores, Banco de Dados SQL (versão prévia em algumas regiões)

Convenções de sintaxe Transact-SQL

Syntax

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

Observação

Para ver a sintaxe do Transact-SQL para o SQL Server 2014 e versões anteriores, confira a Documentação das versões anteriores.

Argumentos

LOGSPACE

Retorna o tamanho atual do log de transações e a porcentagem de espaço usado pelo log para cada banco de dados. Use essas informações para monitorar a quantidade de espaço usado em um log de transações.

Importante

Para saber mais sobre as informações de uso do espaço do log de transações, desde o SQL Server 2012 (11.x), veja a seção Comentários neste tópico.

"sys.dm_os_latch_stats", CLEAR

Zera as estatísticas de trava. Para obter mais informações, confira sys.dm_os_latch_stats (Transact-SQL). Essa opção não está disponível no Banco de Dados SQL.

"sys.dm_os_wait_stats", CLEAR

Zera as estatísticas de espera. Para obter mais informações, confira sys.dm_os_wait_stats (Transact-SQL). Essa opção não está disponível no Banco de Dados SQL.

WITH NO_INFOMSGS

Suprime todas as mensagens informativas com níveis de severidade de 0 a 10.

Conjuntos de resultados

A tabela a seguir descreve as colunas do conjunto de resultados.

Nome da coluna Definição
Database Name Nome do banco de dados da estatística de logs exibida.
Tamanho do log (MB) Tamanho atual alocado ao log. Esse valor sempre é menor que a quantidade alocada originalmente para o espaço de log porque o Mecanismo de Banco de Dados reserva uma quantidade pequena de espaço em disco para informações de cabeçalho internas.
Espaço de log usado (%) Percentual do arquivo de log em uso no momento para armazenar as informações do log de transações no momento.
Status Status do arquivo de log. Sempre 0.

Comentários

Começando com o SQL Server 2012 (11.x), é necessário usar a DMV (exibição de gerenciamento dinâmico) sys.dm_db_log_space_usage em vez de DBCC SQLPERF(LOGSPACE) para retornar as informações de uso de espaço do log de transações por banco de dados.

O log de transações registra cada transação feita em um banco de dados. Para saber mais, confira O log de transações (SQL Server) e Guia de arquitetura e gerenciamento de log de transações do SQL Server.

Permissões

No SQL Server, é necessário ter a permissão VIEW SERVER STATE no servidor para executar DBCC SQLPERF(LOGSPACE). Para redefinir as estatísticas de espera e trava, é necessária a permissão ALTER SERVER STATE no servidor.

No Banco de Dados SQL, as camadas Premium e Comercialmente Crítico requerem a permissão VIEW DATABASE STATE no banco de dados. No Banco de Dados SQL, as camadas Standard, Básico e Uso Geral requerem a conta de administrador do Banco de Dados SQL. Não há suporte para redefinir as estatísticas de espera e trava.

Exemplos

a. Exibir informações de espaço de log para todos os bancos de dados

O exemplo a seguir exibe informações de LOGSPACE sobre todos os bancos de dados contidos na instância do SQL Server.

DBCC SQLPERF (LOGSPACE);
GO

Este é o conjunto de resultados.

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. Redefinir as estatísticas de espera

O exemplo a seguir zera as estatísticas de espera da instância do SQL Server.

DBCC SQLPERF ("sys.dm_os_wait_stats", CLEAR);

Confira também