Desfragmentando arquivos de log e dados do SQL Server ao vivo com a API MoveFile

11

Meu empregador está olhando para implantar o software de desfragmentação NTFS que usa a API do Windows MoveFile para desfragmentar arquivos abertos. Isso seria implantado em milhares de servidores SQL Server executando versões SQL de 2005-2012 e versões do Windows de 2003 e 2008 R2. Se isso importa, o produto de que estou falando é o PerfectDisk, mas acredito que existem programas semelhantes que funcionam da mesma maneira.

Até agora, os testes não revelaram muitos problemas, além de problemas ocasionais de desempenho de E / S, o que não é surpresa e pode ser contornado reagendando e ajustando a desfragmentação. No entanto, estou mais preocupado com o risco de corrupção de dados.

Alguém aqui tem experiência com a execução desse tipo de software em produção em servidores de banco de dados? Você sofreu alguma corrupção de dados?

Estou um pouco desconfortável com isso, apesar de não conseguir encontrar nenhuma evidência sólida de que isso represente um problema.

Obrigado por todas as respostas.

Editado para adicionar: Esta idéia horrível foi felizmente esquecida, possivelmente em parte devido a alguns dos avisos que dei.

James L
fonte
2
Eu estaria perguntando como os discos do SQL Server ficaram tão fragmentados; planejamento e gerenciamento de espaço adequados tornam a fragmentação um problema.
SqlACID

Respostas:

10

Pessoalmente, eu não gostaria de nenhum software antivírus ou de desfragmentação perto de um arquivo de banco de dados. Pergunte a si mesmo: isso vai causar mais problemas do que resolver?

De Um conto de falhas do CHECKDB causadas por drivers de sistema de arquivos de terceiros :

No final da semana passada, o Diskeeper 2009 foi atualizado para o Diskeeper 2010 nos servidores por nossa equipe de servidores. O Diskeeper 2009 estava lá há pelo menos um ano sem problemas, então quem esperaria que fosse esse o problema. Acontece que a nova versão tem uma opção ativada chamada IntelliWrite que causa esse problema. Desativar esta opção resolve imediatamente o problema. Paul postou um blog sobre esse problema há muito tempo e lembrou-se de ter lido isso quando eu cliquei nele, mas era a última coisa em que eu pensaria.

De Cuidado com os drivers do sistema de arquivos terceiro partido com DBCC CHECKDB

Não quero gritar 'lobo' aqui, mas tome cuidado para atribuir grandes problemas de corrupção ao subsistema de E / S real, se houver algum tipo de driver de filtro do sistema de arquivos instalado.

Com planejamento e gerenciamento adequados, você não precisa desfragmentar os arquivos do banco de dados.

Mark Storey-Smith
fonte
4
A desfragmentação no nível de arquivo +1 para SQL definitivamente está latindo na árvore errada ... E mexer com arquivos no SQL é como usar um alvo vermelho e um texto explicativo 'Corrupt me here' ...
Remus Rusanu
Obrigado Mark e Remus. Este é exatamente o tipo de coisa que estou procurando. Vou ver o que mais posso inventar.
James L
1
A Microsoft também publicou um aviso aqui: support.microsoft.com/kb/2454053
James L