Défragmentation des données et des fichiers journaux de SQL Server en direct avec l'API MoveFile

11

Mon employeur envisage de déployer un logiciel de défragmentation NTFS qui utilise l'API Windows MoveFile pour défragmenter les fichiers ouverts. Cela serait déployé sur des milliers de serveurs SQL Server exécutant des versions SQL de 2005-2012 et des versions Windows de 2003 et 2008 R2. Si cela importe, le produit dont je parle est PerfectDisk, mais je pense qu'il existe des programmes similaires qui fonctionnent de la même manière.

Jusqu'à présent, les tests n'ont pas révélé de nombreux problèmes, à part des problèmes occasionnels de performances d'E / S, ce qui n'est pas surprenant et peut être contourné en replanifiant et en ajustant la défragmentation. Cependant, je suis plus préoccupé par le risque de corruption des données.

Quelqu'un ici a-t-il de l'expérience avec l'exécution de ce type de logiciel en production sur des serveurs de base de données? Avez-vous rencontré une corruption de données?

Je suis plutôt mal à l'aise à ce sujet malgré le fait que je ne puisse trouver aucune preuve solide que cela pose un problème.

Merci pour toutes les réponses.

Modifié pour ajouter: Cette horrible idée a heureusement été oubliée, peut-être en partie à cause de certains des avertissements que j'ai donnés.

James L
la source
2
Je demanderais comment les disques SQL Server ont été si fragmentés; une bonne planification et une bonne gestion de l'espace font de la fragmentation un problème.
SqlACID

Réponses:

10

Personnellement, je ne voudrais aucun antivirus ou logiciel de défragmentation à proximité d'un fichier de base de données. Demandez-vous, est-ce que cela va causer plus de problèmes que ça ne va résoudre?

Extrait d' un récit des échecs de CHECKDB causés par des pilotes de système de fichiers tiers :

À la fin de la semaine dernière, Diskeeper 2009 a été mis à niveau vers Diskeeper 2010 sur les serveurs par notre équipe de serveurs. Diskeeper 2009 était là depuis au moins un an sans problème alors qui aurait pu s'attendre à ce que ce soit le problème. Il s'avère que la nouvelle version a une option activée appelée IntelliWrite qui provoque ce problème. La désactivation de cette option résout immédiatement le problème. Paul a blogué à propos de ce problème il y a longtemps et s'est rappelé avoir lu ceci lorsque j'ai cliqué dessus, mais c'était la dernière chose à laquelle j'aurais pensé.

À partir des pilotes de système de fichiers tiers Beware avec DBCC CHECKDB

Je ne veux pas crier «loup» ici, mais faites attention d'attribuer d'énormes problèmes de corruption au véritable sous-système d'E / S si un pilote de filtre de système de fichiers est installé.

Avec une planification et une gestion appropriées, vous ne devriez pas avoir besoin de défragmenter vos fichiers de base de données.

Mark Storey-Smith
la source
4
La défragmentation de +1 au niveau du fichier pour SQL aboie certainement dans le mauvais arbre ... Et jouer avec des fichiers sous SQL, c'est comme porter une cible rouge et une légende "Corrupt me here" ...
Remus Rusanu
Merci Mark et Remus. C'est exactement le genre de chose que je recherche. Je verrai ce que je peux trouver d'autre.
James L
1
MS a également publié un avertissement ici: support.microsoft.com/kb/2454053
James L