DBCC – Database Consistency Cheker

No SQL Server 2005, através da linguagem transacional, temos uma série de comando que podem ser de grande utilidade na manutenção de tabelas e índices.

Entre os vários comandos DBCC existentes, alguns merecem atenção maior quando falamos de otimização de consultas. Abaixo veremos quais são eles divididos por quatro categorias.

Comandos de Manutenção

Comandos para manutenção preventiva ou corretiva no banco de dados:

DBCC DBREINDEX – Reconstrói os índices de uma tabela. Muito útil para manutenção de índices.

DBCC DBREPAIR – Apaga um banco corrompido. Use DRP DATABASE ao invés de DBCC DBREPAIR.

DBCC INDEXDEFRAG – Desfragmenta um ou mais índices de uma tabela. Melhora a performance do índice.

Comandos Gerais

Possuem diversas funcionalidades, como alocação de tabela na memória, ajuda sobre outros comandos DBCC e ‘pinagem’ de tabela:

Comandos de Status

Fazem algumas verificações de algumas configurações do banco de dados:

DBCC HELP – Retorna a sintaxe de algum outro comando DBCC

DBCC PINTABLE – ‘Pina’ a tabela, ou seja, faz o SQL Server não liberar da memória algumas informações de uma tabela. Se utilizado com cuidado, há ganho de performance.

DBCC UNPINTABLE – Faz o SQL Server liberar das memórias algumas informações de uma tabela que foi ‘pinada’ como comando DBCC PINTABLE.

DBCC ROWLOCK – Simplesmente incluída por compatibilidade. A funcionalidade que este comando proporcionava já é embutida automaticamente no SQL Server 2000.

DBCC TRACEON – Habilita um flag de trace que é necessário para outros comandos DBCC.

DBCC TRACEOFF – Desabilita um flag de trace setado como comando DBCC TRACEON.

DBCC OPENTRAN – Mostra informações sobre a transação mais velha (mais tempo executando) em um banco de dados.

DBCC SHOWCONTIG – Mostra várias informações sobre os índices de uma tabela, inclusive o nível de fragmentação do índice.

DBCC SHOW_STATISTICS – Mostra as informações sobre as estatísticas de uma tabela. Estatísticas são muito importantes para a melhora de performance.

Comandos de validação

Checagem de alguns objetos do banco de dados como tabelas, valores das colunas IDENTITY e constraints:

DBCC TRACESTATUS – Mostra a situação dos flags de trace que foram setados com o DBCC TRACEON. Estes traces controlam configurações internas do SQL Server

DBCC CHECKALLOC – Verifica o espaço para as estruturas de alocações internas do SQL Server. Permite alguns reparos em caso de erro.

DBCC CHECKCATALOG – Somente checa a consistência de algumas tabelas de sistema do SQL Server ( que compõem o Database Catalog ). Não faz reparos

DBCC CHECKCONSTRAINTS – Checa os relacionamentos de uma determinada constraint no banco de dados. Não faz reparos.

DBCC CHECKDB – Verifica erros de alocação e de consistência em vários objetos do banco de dados. Pode efetuar reparos importantes em caso de erro.

DBCC CHECKFILEGROUP – Muito parecido com o DBCC CHECKDB, porém só faz a verificação no nível do filegroup de um database. Não faz reparos

DBCC CHECKIDENT – Chega e corrige, caso necessário, valores de colunas que possuem a propriedade IDENTITY. Pode inclusive resetar o valor inicial (seed) da coluna que possui a propriedade IDENTITY.

DBCC CHECKTABLE – Checa e corrige a integridade das páginas de dados, índices, ntext , text e image para uma tabela ou uma indexed view 

DBCC NEWALLOC – Idêntica à DBCC CHECKALLOC. Foi mantida por compatibilidade.

Deixe uma resposta

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s