Bienvenue à Blogs CodeS-SourceS Identification | Inscription | Aide

Blog Technique de Romelard Fabrice

Les dernières Actualités de Romelard Fabrice (Alias fabrice69 ou F___) principalement autour des technologies Microsoft

Actualités

  • Toutes les actualités et informations sur les technologies Microsoft principalement autour de .NET et SQL Server

Archives

SharePoint : Comment isoler une très grosse collection de sites dans une base de données dédiée

La question des bases de données de contenu pour SharePoint (que ce soit pour SharePoint 2007 ou 2010) a été traîtée plusieurs fois :

Il existe cependant un cas très courant qui est plutôt complexe à gérer :

  • Isoler une grosse collection de site (plusieurs dizaines de GB) dans une base de données dédiée

En effet, ce cas précis demande de paramétrer plus précisément les bases de données avant la suppression et la restauration. Nous verrons les différentes étapes à suivre.


Etapes préparatoires

La première chose à faire est de bien s’accorder avec les utilisateurs pour avoir une période raisonable de non utilisation de la collection de sites (cela dépend de votre architecture et surtout de la taille de la collection, mais on peut généralement prévoir une demi journée).

La seconde modification est de bloquer tous les scripts et taches de sauvegarde (collections de sites via STSADM, Backup SQL Server, …), car ceux-ci vont rallentir énormément les commandes STSADM à utiliser.

La troisième étape préparatoire est liée au changement de mode d’historisation de la base où se trouve la collection à isoler, ainsi que la base de données où on veut placer cette collection. En effet, lors de la suppression et de la restauration de la collection, le moteur SQL Server va enregistrer cette suppression dans le fichier de Log de Transaction.

Pour ceci, il faut aller dans les propriétés de ces deux bases de données et changer le mode de recouvrement en “Simple”.

image

La quatrième étape est de modifier les paramètres d’accroissement de la taille des fichiers de base de données. Ainsi il est bon de donner une taille d’accroissement par bloc de 10 GB (ou un multiple de la taille de votre collection de sites à isoler)

image


Etapes de Migration

La migration de fait selon les même étapes présentées dans cette page :

Soit les taches suivantes :

  • Sauvegarde de la collection de sites via STSADM –O BACKUP
  • Suppression de la collection de site via STSADM –O DELETESITE
  • Modification des paramètres de la base de données de contenu dans laquelle la collection doit être chargée
  • Restauration de la collection de sites via STSADM –O RESTORE

Etapes finales

Il faut tout de suite modifier les paramètres de la base de données pour les limites SharePoint afin de ne pas ajouter de collection dans cette base. Pour cela, il faut mettre la valeur maximum au plus bas.

Il faut ensuite définir les paramètres normaux pour la base de données via le moteur SQL Server :

  • Remettre le mode de journalisation à “Full”
  • Définir la croissance des fichiers de log par bloc fixe (1 GB pour les logs et pour le fichier de données)

Faire un Schrink de la base où était la collection avant le déplacement dans sa base dédiée.

Réactiver les outils de sauvegarde (STSADM, SQL Server, …)


Conclusion

La bonne gestion des bases de données de contenu va influer naturellement le bon fonctionnement de votre environnement SharePoint (que ce soit 2007 ou 2010).

Lorsque la taille d’une collection de site devient hors de proportion des autres, il est bon de l’externaliser dans une base de données dédiée. Cette solution est aussi à envisager pour les collections de sites sensibles (application métier par exemple).

Le cas classique est enfin la préparation de la migration de version, le passage de SharePoint 2007 à SharePoint 2010. La méthode à préférer pour cette migration est celle par content DB.

Romelard Fabrice [MVP]

Mots clés Technorati : ,,,
Ce post vous a plu ? Ajoutez le dans vos favoris pour ne pas perdre de temps à le retrouver le jour où vous en aurez besoin :
Posted: jeudi 23 juin 2011 14:45 par ROMELARD Fabrice

Commentaires

Gerald Aillaud a dit :

bonjour,

je trouve votre post très utile car le contenu a tendance à augmenter plus qu'il ne diminue. Ayant effectué cette opération pour sortir du contenu 'critique' (mais sans les étapes sur les bases que je n'oublierai pas la prochaine fois), je rajouterai 2 choses:

- le delete a été très long (1heure) alors que la collection de sites ne faisait que 15G (mauvais paramétrage au niveau de sql ?) et a généré dans mon cas une interruption de service sur les sites hébergés sur la meme content db (deadlock). Tout est rentré dans l'ordre à la fin du delete.

- pendant le delete, la tempdb grossit pas mal. Attention à l'espace disponible.

pour finir, je dirais que j'ai eu qq sueurs car ces opérations de delete/restore ne sont pas sans risques..

# juin 29, 2011 13:01

ROMELARD Fabrice a dit :

Bonjour Gérard,

C'est tout à fait normal, si le paramètre de journalisation reste sur FULL, la tache de suppression va mettre l'intégralité des étapes de suppression dans le log de transaction, car cela représente plus ou moins à des DELETE.

De ce fait, une suppression peut durer très longtemps (pour 45 GB, ca m'a pris près de 2 H en mode journalisation simple).

Pour ce qui est l'augmentation du TempDB, c'est aussi lié au même travail, en cas d'erreur lors de la tache, ca permet de faire un gros ROLLBACK.

Bref, c'est une tache qui donne effectivement de bonnes sueurs froides et pour maa part, je fais ce travail sur un environnement depuis plus d'un mois (car les temps d'indisponibilité sont trop court).

Romelard Fabrice [MVP]

# juin 29, 2011 13:49

Gerald Aillaud a dit :

merci pour ces infos, je mettrais en pratique vos recommendations lors de mes prochaines 'extractions'. Je pourrais alors comparer les temps de traitement car la collection de site fait a peu près la même taille que la précédente.

Gérald

# juin 29, 2011 16:34
Les commentaires anonymes sont désactivés

Les 10 derniers blogs postés

- [PowerShell 3] Télécharger et installer la documentation en ligne par Blog de SPBrouillet (Pierrick BROUILLET) le il y a 19 heures et 34 minutes

- [#SharePoint 2010][#SQLServer 2012] AlwaysOn pour SharePoint (1/4) : Configuration (1ère partie)… par Le blog de Patrick [MVP SharePoint] le 05-16-2012, 12:10

- Job Day @MIC Brussels - .Net Developers on Mobile applications par Le Blog (Vert) d'Arnaud JUND le 05-15-2012, 20:26

- [SharePoint 2010] – SharePoint 2010, Windows (Server) 8 et des erreurs IIS sont dans une VM… par Blog de SPBrouillet (Pierrick BROUILLET) le 05-14-2012, 12:10

- [Event] Windows Azure dev Camp le 20 juin! par Fathi Bellahcene le 05-13-2012, 09:29

- Comment redimensionner une image avec WinRT : plusieurs solutions par Richard Clark le 05-11-2012, 15:43

- Event : Swiss SharePoint Club Meeting #20 à Yverdon par Blog Technique de Romelard Fabrice le 05-11-2012, 15:24

- Réflechissons un peu ce matin à propos des ORM par Richard Clark le 05-11-2012, 08:48

- #SharePoint Solutions Roadshow le 5 juin à Issy ! par Le blog de Patrick [MVP SharePoint] le 05-09-2012, 15:10

- SharePoint : Mes alertes ne marchent pas … Que faire ? Comment réparer ou agir ? par The Mit's Blog le 05-08-2012, 14:59