Você está na página 1de 5

Comandos DBCC no SQL Server – iMasters http://imasters.com.br/artigo/255/sql_server/comandos_dbcc_no_sql_s...

Abril.com Notícias Entretenimento Homem INFO Downloads Reviews Busca Celular Assine Loja Grupo Abril

PORTAL AGENDA DE EVENTOS ARTICULISTAS MULTIMÍDIA FÓRUM CODE IMASTERS PRO

Por uma internet mais criativa e dinâmica

Design Mercado CMS Framework APIs Desenvolvimento Linguagens Mídia e Marketing Digital Tecnologia

SQL Server
Comandos DBCC no SQL
Server
Segunda-feira, 20/05/2002 às 01h59, por Mauro Pichiliani

Anúncios Google SQL Server MS SQL ServerSQL SQL Server SQL Server Zip
Pessoal, nesta semana nos vamos dar uma olhada nos comandos DBCC do SQL Server.

Conforme dito anteriormente, esta sigla se refere à DataBase Console Commands e são comandos que
fazem a consistência lógica e física do banco de dados. Apesar da maioria dos comandos ser somente
para retornar informações sobre o banco temos alguns comandos podem ajudar a resolver problemas,
outros que foram mantidos somente por compatibilidade e outros são de rara utilidade.

O comandos DBCC basicamente se dividem em 4 categorias descritas a seguir:

1. Comandos de Manutenção

Fazem alguma manutenção preventiva ou corretiva no banco de dados. Alguns comandos desta
categoria:

DBCC DBREINDEX Reconstrói os índices de uma tabela.

Muito útil para manutenção de


ÚLTIMAS NOTÍCIAS
índices.

17h40

DBCC DBREPAIR Apaga um banco corrompido. Use Relatório aponta que 42% dos
DRP DATABASE ao invés de DBCC softwares para PCs foram
DBREPAIR.
pirateados em 2010
16h35

DBCC INDEXDEFRAG Desfragmenta um ou mais índices de Google facilita a descoberta de


uma tabela. Melhora a performance bons aplicativos no Android
do índice. Market
15h40

DBCC Diminui o tamanho de todos os Galaxy Tab original começa a


SHRINKDATABASE arquivos de dados ou Log de um receber Android 2.3
banco de dados até um certo 14h30

tamanho. Facebook contesta Symantec e


afirma que dados não vazaram
DBCC SHRINKFILE Diminui o tamanho de um arquivo 13h20

específico de dados ou Log de um Microsoft atualiza Office Web


banco de dados até um certo Apps
tamanho. VER MAIS NOTÍCIAS

DBCC UPDATEUSAGE Corrige erros de tamanho de dados

retornados pela Stored Procedure

sp_spaceused.

2. Comandos Gerais

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

DBCC (FREE) Descarrega da memória uma DLL que

1 de 5 13/05/2011 00:19
Comandos DBCC no SQL Server – iMasters http://imasters.com.br/artigo/255/sql_server/comandos_dbcc_no_sql_s...

possui alguma Extend Stored Procedure

associada a ela. Encontre-nos no Facebook

iMasters
DBCC HELP Retorna a sintaxe de algum outro
Curtir
comando DBCC

3,267 pessoas curtiram iMasters.


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


João Paulo Renato Sinomar Thiago Antonio
com cuidado , há ganho de

performance.

Ron-ely Felipe Carlos GuilhermeKabloc Ricardo


DBCC UNPINTABLE Faz o SQL Server liberar da memórias
Plug-in social do Facebook
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

3. Comandos de Status

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

DBCC INPUTBUFFER 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 OUTPUTBUFFER Mostra o output atual que o banco

retornou para um processo (


CURSOS ONLINE
usuário ) no SQL Server. O resultado

retornado é em hexadecimal...

DBCC OPENTRAN Mostra informações sobre a

transação mais velha ( mais tempo

executando ) em um banco de

dados. Criação de Temas para WordPress


Aprenda técnicas de criação e de desenvolvimento de
temas para WordPress e desenvolva um tema a partir
DBCC PROCCACHE Mostra informações sobre o
de um layout real.
Procedure Cache.

DBCC SHOWCONTIG Mostra várias informações sobre os

índices de uma tabela , inclusive o

nível de fragmentação do índice.

Planos de Comunicação em Mídias Digitais


DBCC Mostra as informações sobre as
Esse curso foi desenvolvido para quem quer entender
SHOW_STATISTICS estatísticas de uma tabela. as principais partes do processo de planejamento de
Estatísticas são muito importantes ações digitais e quais são os modelos aplicados de
planos de comunicação.
para a melhora de performance.

DBCC SQLPERF Informações sobre tamanho do Log

dos bancos de dados.

2 de 5 13/05/2011 00:19
Comandos DBCC no SQL Server – iMasters http://imasters.com.br/artigo/255/sql_server/comandos_dbcc_no_sql_s...

Criação de Loja Virtual com Magento


DBCC TRACESTATUS Mostra a situação dos flags de trace Gerencie sua loja virtual com Magento E-commerce,
que foram setados com o DBCC instalando módulos e templates, deixando-a com a sua
cara e necessidades.
TRACEON. Estes traces controlam

configurações internas do SQL

Server

Treinamentos: PostgreSQL
Desde os conceitos fundamentais até avançados!
DBCC USEROPTIONS Mostra várias informações
wcj-it.com/treinamentos.html
referentes à conexão do usuário.
Desempenho de SQL Server
Otimize o SQL Server, Economize Custos,
Download Free Trial!
4. Comandos de validação www.Confio.com/SQL-Server
Viva Leve Pilates
Checagem da “saúde” de alguns objetos do banco de dados como tabelas, valores das colunas Pilates em aparelhos Resultados rapidos e
IDENTITY e constraints. Comandos: duradouros
www.vivalevepilates.com.br
Linguagem SQL com a IBM
DBCC CHECKALLOC Verifica o espaço para as Informações sobre a linguagem SQL com quem
mais entende de Tecnologia
estruturas de alocações internas IBM.com/developerWorks/br

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 Checa os relacionamentos de uma

CHECKCONSTRAINTS 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.

Geralmente após a execução de qualquer comando DBCC , obtemos a seguinte 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. Alguns
comandos podem gerar um output interessante, como o DBCC USEROPTIONS. Podemos armazenar
este output em uma tabela e depois consultar o resultado do comando armazenado na tabela. Por
exemplo:

/* Criando a tabela que irá armazenar o output. As colunas desta tabela dependem do comando DBCC que for utilizado.

*/

3 de 5 13/05/2011 00:19
Comandos DBCC no SQL Server – iMasters http://imasters.com.br/artigo/255/sql_server/comandos_dbcc_no_sql_s...

CREATE TABLE OUTPUT_DBCC

OPCAO VARCHAR(35) NOT NULL,

VALOR VARCHAR(35) NOT NULL

/* Inserindo os dados de DBCC USEROPTIONS na tabela , através da instrução EXEC */

INSERT INTO OUTPUT_DBCC(OPCAO,VALOR) EXEC('DBCC USEROPTIONS')

/* Verificando os dados */

SELECT OPCAO , VALOR FROM OUTPUT_DBCC

Todos os comandos das quatro categorias listados acima são amplamente documentados no Books
OnLine, inclusive com exemplos de uso e situações nas quais eles podem ajudar.

Além das quatro categorias de comandos DBCC descritas acima, ainda temos alguns comandos não
documentados pela Microsoft. Estes comandos DBCC não foram documentados por não serem de uso
geral e por precaução: algum usuário descuidado pode acabar enviando um comando que pode causar
um grande estrago no banco de dados.

Como não existe documentação oficial sobre estes comandos DBCC, quem quiser se aprofundar mais
sobre eles eu recomendo os seguintes artigos publicados na web:

Some Useful Undocumented SQL Server 2000 DBCC Commands

http://www.sql-server-performance.com/ac_sql_server_2000_undocumented_dbcc.asp

Undocumented SQL Server 7.0 DBCC Commands

http://www.swynk.com/friends/achigrik/DBCC70.asp

Abraço galera, e até a semana que vem!

Mauro Pichiliani é mestre em computação, possui as certificações MCP,


MCDBA, MCT e MCTS e atua como consultor de banco de dados com
enfoque na área de tuning.

Página do autor Email Website

1 COMENTÁRIO COMENTE TAMBÉM

Jardel Morais
Maravilha Mauro! Obrigado pelo post.

Há 5 dias · Responder

QUAL A SUA OPINIÃO?

4 de 5 13/05/2011 00:19
Comandos DBCC no SQL Server – iMasters http://imasters.com.br/artigo/255/sql_server/comandos_dbcc_no_sql_s...

PARCEIROS

© 2001 iMasters FFPA Informática Ltda


Todos os direitos reservados.
Sobre o iMasters
Política de privacidade
Anuncie
Fale conosco

5 de 5 13/05/2011 00:19