Motivos (ótimos) para não diminuir seus arquivos de dados no SQL Server

Olá a todos!

Ao prestar serviços em diversos clientes, encontro com certa frequência ambientes com rotina agendada para diminuir o tamanho dos arquivos de banco de dados. Em outras palavras, encontro um DBCC SHIRNKDATABASE ou DBCC SHRINKFILE.

Já no curso oficial de SQL Server 2008 (http://www.microsoft.com/learning/en/us/course.aspx?id=6231B) recomendo que o banco de dados seja criado no tamanho “ideal”, ou seja, num tamanho que não seja preciso ser aumentado com frequência, para evitar a fragmentação.

Agora, num post do Paul Randal, encontrei uma explicação e uma demonstração bem convincentes:

Executar a redução (shrink) dos arquivos de dados causa fragmentação MASSIVA de índices!!!

Resumidamente, uma operação de redução de arquivo utilizam bitmaps da GAM para localizar a última página alocada no arquivo (maior ID). Esta página é movida o máximo possível para o início do arquivo (“para trás”), e o processo é repetido com a próxima página, depois com a próxima, … e assim por diante, causando a fragmentação completa dos índices.

Link do post do Paul Randal:
http://www.sqlskills.com/BLOGS/PAUL/post/Why-you-should-not-shrink-your-data-files.aspx.

Recomendações:

  • NUNCA execute DBCC SHRINKFILE ou DBCC SHRINKDATABASE em ambiente de produção;
  • Nunca habilite a opção de banco AUTO SHRINK;
  • Se não puder ser evitado a operação DBCC SHRINK, remova a fragmentação causada executando o comando ALTER INDEX … REORGANIZE (requer apenas uma página de 8 KB extra).

Ótima semana a todos!

Quem é Paul Randal?

É simplesmente o cara que escreveu os comandos DBCC INDEXDEFRAG (SQL Server 2000) e DBCC CHECKDB (2000 e 2005)!!! Precisa mais? Veja: http://www.sqlskills.com/AboutPaulSRandal.asp

Anúncios

2 pensamentos sobre “Motivos (ótimos) para não diminuir seus arquivos de dados no SQL Server

Deixe um comentário

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