Friday, March 21, 2008

Accélerez SharePoint: Purgez les logs !

Lorsqu'on utilise une configuration standard de SQL Server, les fichiers logs ne sont pas paramétrés au mieux. Ceci à des incidences non négligeables sur les performances à venir de SharePoint. En effet, on peut noter que le fichier log de configuration (Config) de SharePoint à tendance à prendre de l'embonpoint au fur et à mesure de son utlisation. Et bien entendu, les logs associés à votre ou vos ContentDB.

Alors si cette gestion des logs n'est pas optimisée, voici une astuce qui permettra de faire un peu de place et de gagner en rapidité. Cette astuce peut de toute façon être utilisée, même si la gestion des logs est bien faite, cela n'empêche pas! Une bonne cure de printemps, c'est le moment.

Comment faire ?

Tout d'abord, il vaut mieux arrêter quelques services, comme le timer et le search :

NET STOP SPTIMERV3

NET STOP OSEARCH

IISRESET

Puis, personnellement, je préfère faire comme si je voulais déplacer la base. Pour éviter que SharePoint se mélange les pinceaux, et inonde l'Event Viewer de messages pas très catholiques, je fais un preparetomove :

stsadm -o preparetomove -contentdb SQLSERVERNAME:CONTENTDBNAME -site http://SITENAME

Ensuite, je vais dans SQL Server Management Studio pour détacher la base CONTENTDBNAME. Assurez-vous que personne n'est connecté.
Puis je retourne dans le file system pour renommer le fichier CONTENTDBNAME.LDF en... ce que vous voulez, mais il ne faut pas l'effacer (pas encore)
Retour à nouveau dans SQL Server Management Studio pour attacher (Attach) la base CONTENTDBNAME, et, dans la fenêtre de confirmation qui apparaît, il faut mettre en surbrillance le nom du fichier log "Not Found" et cliquer sur le bouton Remove.
Ceci fait, cliquez sur Ok et la base est de retour.
Dans les propriétés de la base, vous pouvez maintenant voir que le fichier log est d'environ 1Mo (cela varie selon la configuration de la DB) et vous pouvez ajuster sont incrément ainsi que sa limite maxi.

NET START SPTIMERV3

NET START OSEARCH

Ensuite, retourner sur votre site et... tout doit fonctionner correctement ! Si ce n'est pas le cas, alors vous avez encore la possibilité de renommer à nouveau l'ancien log. Mais si tout fonctionne, alors vous pouvez supprimer les logs renommés.
Pour ma part, j'ai fait cette opération chez un client qui avait deux logs de plus de 50Go pour des DB de 10Go. Et bien, ça a fait de la place, et il y a surtout eu un gain en rapidité en lecture et écriture.

No comments: