Comandos DBCC

Existem uma série de comandos no SQL Server, estes chamados Comandos DBCC. Esta sigla refere-se à Data Base Console Commands. São comandos que fazem a consistência lógica e física da base de dados. A maioria dos comandos retornam apenas informações sobre o banco de dados, porém existem alguns comandos que podem ajudar a resolver alguns problemas.

Estes comandos estão divididos em 4 partes. São elas:

1 – Comandos de Manutenção

Estes comandos fazem a manutenção preventiva ou corretiva no banco de dados:

-- Reconstroí os índices de uma tabela.
DBCC DBREINDEX

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

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

-- Diminui o tamanho de todos os arquivos de dados ou Log de um banco de dados até um certo tamanho.
DBCC SHRINKDATABASE

-- Diminui o tamanho de um arquivo específico de dados ou Log de um banco de dados até um certo tamanho.
DBCC SHRINKFILE

-- Corrige erros de tamanho de dados retornados pela Stored Procedure sp_spaceused.
DBCC UPDATEUSAGE

2 – Comandos Gerais

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

-- Descarrega da memória uma DLL que possui alguma Extend Stored Procedure associada a ela.
DBCC (FREE)

-- Retorna a sintaxe de algum outro comando DBCC
DBCC HELP

-- ‘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 PINTABLE

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

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

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

-- Desabilita um flag de trace setado como comando DBCC TRACEON
DBCC TRACEOFF

3 – Comandos de Status

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

-- Mostra o último comando enviado por um processo ( usuário ) no SQL Server. 
-- É parecido com o trace que o Profiler mostra , porém limitado.
DBCC INPUTBUFFER

-- Mostra o output atual que o banco retornou para um processo ( usuário ) no SQL Server. 
-- O resultado retornado é em hexadecimal…
DBCC OUTPUTBUFFER

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

-- Mostra informações sobre o Procedure Cache.
DBCC PROCCACHE

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

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

-- Informações sobre tamanho do Log dos bancos de dados.
DBCC SQLPERF

-- 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 TRACESTATUS

-- Mostra várias informações referentes à conexão do usuário.
DBCC USEROPTIONS

4 – Comandos de validação

Realiza a checagem das condições de alguns objetos do banco de dados como tabelas, valores das colunas IDENTITY e constraints:

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

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

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

-- 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 CHECKDB

-- 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 CHECKFILEGROUP

-- 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 CHECKIDENT

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

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

Cada comando executado é gerado uma resposta através de uma mensagem:

(…)
DBCC execution completed. If DBCC printed error messages, contact your system administrator.

Isso é meio vago, mas tudo bem pois indica que o comando foi executado sem problemas.

Deixe uma Resposta

Preencha os seus detalhes abaixo ou clique num ícone para iniciar sessão:

Logótipo da WordPress.com

Está a comentar usando a sua conta WordPress.com Terminar Sessão / Alterar )

Imagem do Twitter

Está a comentar usando a sua conta Twitter Terminar Sessão / Alterar )

Facebook photo

Está a comentar usando a sua conta Facebook Terminar Sessão / Alterar )

Google+ photo

Está a comentar usando a sua conta Google+ Terminar Sessão / Alterar )

Connecting to %s