Migrer SharePoint sous SQL Server 2005 - Part 2 : Migrer une installation SharePoint sous SQL 2005

Paru le 03 juillet 2006

Suite à l'examen des alertes remontées par conseiller de mise à niveau, nous allons maintenant voir comment effectuer cette migration. Nous commencerons par la migration via l'Update du moteur SQL Server.

Introduction

La nouvelle version : SQL Server 2005, permet un gain de performance visible sur les applications SharePoint (SPS comme WSS), ceci en partie du aux modifications apportées au moteur relationnel. De ce fait, il est très attractif de migrer des installations déjà en production sur cette nouvelle plateforme.

Présentation

Dans le précédent chapitre, nous avons testé les bases de données SQL Server 2000 des applications SharePoint avec le conseiller de mise à niveau :

  • Upgrade du moteur SQL Server

  • Copie des bases avec Attach/Detach

  • Copie des bases avec Backup/Restaure

Dans le premier cas, le moteur sera directement mis à jour sans possibilité de revenir en arrière, elle est donc à sélectionner dans le cas par exemple où les volumes des bases de données ne sont pas déplaçables.

Les deux cas suivants seront effectués par l'installation d'une instance nommées SQL Server 2005 sur la même machine.

Tout le travail sera effectué pour une installation SharePoint (WSS et SPS) mono machine.

Nous verrons dans un premier temps la migration du moteur dans cet article. Les mises à jour via la copie seront effectuées dans un prochain article.

Upgrade du moteur SQL Server

L'upgrade du moteur correspond à la mise à jour du moteur SQL de la version 2000 vers la version 2005. Ainsi, il s'agit d'une installation, mais un peu particulière.

Voyons donc comment faire ceci.

En lançant le CD, on commence de la même façon que pour l'installation d'une nouvelle instance :

On accepte les termes de la licence.

L'installer copie les fichiers nécessaires.

Et scanne la configuration de la machine.

Pour ensuite avoir la fenêtre de lancement de cette installation.

Une analyse des composants est faite avec un résultat affiché.

On a ensuite le lancement de l'installation.

La demande du nom et de la société.

Nous devons maintenant sélectionner le moteur à installer. Notre cas étant de faire la mise à jour du moteur relationnel, nous ne cocherons que la première ligne "SQL Server Database Services".

Ce qui correspond à l'ensemble des modules montré en regardant l'écran "Advanced".

C'est à ce moment que le choix se fait entre l'Upgrade ou l'installation de la nouvelle instance.

Notre instance SQL Server 2000 est en instance par défaut (non nommé), de ce fait, en sélectionnant la première ligne, l'installer fera un Upgrade du moteur.

Dans le cas d'une instance nommé de SQL Server 2000, il faudrait cocher la seconde ligne et rajouter le nom de l'instance en question.

Pour avoir la liste des instances disponible, il faut cliquer sur "Installed instances".

On a alors une alerte nous signalant que la version (avec le code version) déjà en cours et nous demandant si on souhaite bien faire cette mise à jour.

En cliquant sur "Details", on voit les composants impactés.

On entre alors le mode de connexion que l'on va utiliser durant cette mise à jour (Windows ou SQL Server).

Une analyse se lance pour auditer l'installation existante.

Il faut alors spécifier le compte qui sera utilisé pour exécuter le service SQL Browser. On peut prendre le Local System lors de l'installation et le changer par la suite si besoin.

On doit maintenant définir si on souhaite remonter les erreurs éventuelles vers Microsoft ou non. Par défaut, je sélectionne toujours cette option (si le serveur à un accès vers les sites HTTP), afin que Microsoft puisse améliorer leur produit en cas de problème.

On voit enfin un résumé de la demande d'installation s'afficher.

L'installation se fait et on suit son déroulement directement.

Pour finalement obtenir l'écran de conclusion avec une vision possible de l'installation de chaque composant en cliquant sur la ligne.

On a enfin un petit topo des modules complémentaires qui peuvent être installés (SSAS, SSRS, SSIS et Notification Services).

Nous avons donc notre moteur SQL Server qui est maintenant en version 2005. Nous devons modifier certains paramètres afin d'utiliser le moteur SQL Server 2005 à son maximum.

Installation d'un client d'administration

On sait que dans notre cas, nous n'avons que le moteur relationnel de SQL Server 2005. De ce fait le client complet (SQL Server Management Studio) est trop riche pour notre besoin. Il fournit tout ce qui est nécessaire pour gérer tous les moteurs de la solution SQL Server 2005 (SSAS, SSRS, SSIS et Notification Services).

Nous allons donc simplement installer la version Express de Management Studio qui nous suffira amplement.

Vous trouverez celui-ci sur le site de Microsoft :

Vous trouverez en cas de besoin un article qui vous présente entièrement ce produit :

Changement du niveau de compatibilité

Ce changement peut être effectué de deux méthodes :

  • De manière graphique

  • Via une procédure système

Nous verrons donc les deux méthodes.

Avec l'outil de Management
Une fois connecté au moteur SQL, il faut développer l'explorateur d'objets afin d'avoir une vue de toutes les bases.

On peut alors cliquer avec le bouton droit de la souris sur une des bases (il faut effectuer cela sur l'ensemble des bases, y compris la base système : "Master"), et sélectionner "Properties".

On va ensuite dans l'onglet "Options".

On voit alors sur la droite de la fenêtre, à la troisième ligne apparaître le niveau de compatibilité. Il est actuellement sous "SQL Server 2000 (80)".

Il faut donc sélectionner dans la liste déroulante "SQL Server 2005 (90)" et cliquer sur OK.

La fenêtre se ferme alors et la base est en niveau de compatibilité SQL Server 2005.

En mode commande

Cela se fait toujours avec le client de management, mais en utilisant une procédure stockée système : "sp_dbcmptlevel"

L'explication est ici :

  • sp_dbcmptlevel (Transact-SQL) (FR)

Il faut donc exécuter la requête suivante pour chaque base de données du moteur :

  • sp_dbcmptlevel [BaseDeDonneeAModifier], 90

Pour laquelle vous aurez un retour comme celui-ci :

  • DBCC execution completed. If DBCC printed error messages, contact your system administrator.

Vous pouvez faire une boucle qui fera ceci pour chaque base, mais étant donné le nombre de bases présentes sur le serveur dans notre cas, il est plus simple de le faire en changeant le nom de la base à chaque fois.

Notre migration est maintenant terminée, voyons les impacts sur les applications SharePoint.

Résultat de la migration sur SharePoint

SharePoint Portal Server (SPS)

Le fonctionnement du portail SPS est visible immédiatement, le temps de réaction des pages est instantanée, même sur une plateforme virtuelle mono-machine.

Le changement du moteur est transparent pour SPS et ne nécessite aucun redémarrage du serveur une fois cette upgrade effectué.

SharePoint Portal Server Central Administration (SPS)

La "Globale Admin" est directement synchronisée et tout apparaît dedans comme si rien n'avait été modifié. Il n'y a donc rien à changer dans la topologie de la plateforme SharePoint.

Comme pour le portail, le rafraichissement est immédiat.

On note aussi que la charge mémoire du moteur SQL est diminuée en rapport avec la précédente version 2000 (environ 22 Mo de mémoire vive prise).

Windows SharePoint Services (WSS)

Pour les sites WSS, le temps de rafraichissement et de navigation est encore plus visible que pour le portail SPS. Les pages s’enchainent sur la machine virtuelle sans temps d'attente et sans aucun bug visible.

Aucune modification n'est à apporter au(x) site(s) WSS existant sur le serveur.

On peut donc dire que cette migration via Upgrade du moteur permet de faire fonctionner SharePoint sans aucun effet de bord. En revanche la performance accrue est visible.

Conclusion

Dans cet article nous avons vu la méthode la plus simple dans de nombreux cas. En revanche, celle-ci n'est pas la moins dangereuse, car une fois l'Upgrade lancée, il n'est plus possible de faire machine arrière. De ce fait, il est à préférer dans des cas extrêmes et avec une grande attention.

Nous verrons cette partie dans le prochain article comment faire cette migration dans le cadre d'un nouveau serveur ou d'une nouvelle instance.

Voici quelques liens utiles si cet article vous a intéressé :

En vous souhaitant de bons projets de développement.

Romelard Fabrice (alias F___)
Consultant Technique ilem SA