Il existe un outil très intéressant sur CodePlex pour analyser visuellement la fragmentation interne de vos fichiers MDF et NDF.
Internals Viewer for SQL Server
Cet outil gratuit se présente sous la forme d’un addin à Management Studio (SSMS). Il détaille toutes les pages par index.
Sauf qu’entre SQL Server 2008 et 2008 R2, il y a eu des modifications dans les API entrainant une incompatibilité (breaking change en anglais). Si vous le téléchargez, vous aurez une erreur au démarrage (No such interface supported).
Pour le faire fonctionner (sans revenir à la version précédente de Management Studio), je vous invite à télécharger le code et supprimer ces quelques lignes :
/* * Legacy Code (SQL 2005 et 2008) */ //IObjectExplorerEventProvider provider = ServiceCache.GetObjectExplorer().GetService(typeof(IObjectExplorerEventProvider)) as IObjectExplorerEventProvider; //provider.NodesRefreshed += new NodesChangedEventHandler(Provider_NodesRefreshed); //provider.NodesAdded += new NodesChangedEventHandler(Provider_NodesRefreshed); //provider.BufferedNodesAdded += new NodesChangedEventHandler(Provider_NodesRefreshed);
Il vous faudra également mettre à jour quelques références (SmoEnum qui n’existe plus par exemple ou bien le chemin vers les assemblies si vous êtes en x64). Redéployez et le tour est joué.
Evidemment, ce n’est pas la solution la plus académique mais c’est pragmatique en attendant un vrai support des Addins dans SSMS.
Merci à Jonathan Kehayias (SQL 2008 R2 Breaks SSMS Addins) même si ça n’a pas tout résolu .
Merci à mes partenaires de tarot qui ont supporté ma séance de débogage pendant nos parties.