SQL Server 2008 : Slipstreamed installation avec le Service Pack 1

Dans ce nouveau post, nous allons voir comment intégrer sois même le Service Pack dans l’installation originale de SQL Server 2008 RTM.

Qu’est qu’une slipstreamed installation?

Une version slipstreamed est en fait une version modifiée du package d’installation initial d’un produit en intégrant des mises à jour comme des service packs.

Les produits Microsoft permettent de faire cela de plus en plus et surtout de plus en plus facilement.

A quoi cela sert-il?

Je suis convaincu que vous l’avez déjà devinné! L’énorme avantage de déployer un produit avec les mises à jour intégrées est un gain de temps d’une part mais également il permet de déployer une version unique du produit avec les updates choisis par l’entreprise.

Des produits comme MOSS 2007 sont vraiment très simples à modifier pour intégrer par exemple le service pack 2 via un répertoi dédié “updates” où il suffit de déployer les sources du service pack pour les intégrer dans l’installation. Concernant SQL Server 2008, c’est également assez simple et nous allons voir les différentes étapes ici.

Procédure pas à pas

IMPORTANT: cette procédure décrit les étapes pour une version EN de SQL Server 2008. Attention de bien prendre les bonnes versions linguistiques des Service Pack si différentes de EN et d’éditer les commandes ci-dessous en fonction.

Pour commencer, il faut copier les sources initiales de l’installation de SQL Server 2008 RTM dans un répertoire temporaire. Par exemple : C:\SQLServer2008_FullSP1 A droite, vous voyez à quoi doit ressembler la racine de l’installation de SQL Server 2008 RTM.  image
Télécharger SQL Server 2008 Service Pack 1 depuis l’adresse suivante: https://www.microsoft.com/downloads/details.aspx?FamilyID=66ab3dbb-bf3e-4f46-9559-ccc6a4f9dc19&displaylang=en Nous vous recommandons de télécharger les 3 fichiers d’installation correspondant aux 3 architectures de SQL Server : IA64, x64 & x86.
  1. SQLServer2008SP1-KB968369-IA64-ENU.exe
  2. SQLServer2008SP1-KB968369-x64-ENU.exe
  3. SQLServer2008SP1-KB968369-x86-ENU.exe

 

Une fois téléchargés, vous devez extraire les sources de chacun des 3 exécutables. Pour cela, vous pouvez utiliser les commandes ci-contre depuie une fenêtre de commandes (cmd, powershell). Cela permet d’extraire les sources des packages EXE dans un nouveau répertoire nommé “PCU”

SQLServer2008SP1-KB968369-IA64-ENU.exe /x:c:\SQLServer2008_FullSP1\PCU

SQLServer2008SP1-KB968369-x64-ENU.exe /x:c:\SQLServer2008_FullSP1\PCU

Server2008SP1-KB968369-x86-ENU.exe /x:c:\SQLServer2008_FullSP1\PCU

La prochaine étape consiste à copier/coller les fichiers setup.exe et setup.rll depuis le répertoire PCU vers le répertoire parent. Si vous avez respecter les noms des répertoires, cela correspond à C:\SQLServer2008_FullSP1  image
La dernière étape consiste à mettre à jour les fichiers de chaque architecture. Depuis PCU\<Architecture> vous copiez tous les fichiers (pas les répertoires) excepté Microsoft.SQL.Chainer.PackageData.dll pour les copier dans répertoire racine\<Architecture. Si vous avez respecté les répertoires donné dans ce post, cela devrait correspondre à copier les fichiers mentionnés ci-dessus depuis C:\SQLServer2008_FullSP1\PCU\<Architecture> vers C:\SQLServer2008_FullSP1\<Architecture>  image
Les fichiers sont maintenant mis à jour, il reste à définir l’emplacement du répertoire PCU dans le fichier de configuration. Vous avez juste à ouvrir le fichier DefaultSetup.ini contenu dans chaque répertoire d’architecture (x64, IA64,x86) Chemin Relatif Vous pouvez indiquer un chemin relatif mais vous devrez lancer l’installation depuis l’emplacement du package d’installation. Chemin absolu  Vous pouvez utiliser un chemin absolu, très pratique si vous le connaissez et qu’il ne change pas constamment. Exemple Chemin Relatif : PCUSOURCE=".\PCU" Exemple Chemin Absolu : PCUSOURCE=”\\Server\Products\SQLServer2008SP1\PCU”

Votre package SQL Server 2008 SP1 est maintenant prêt! Vous pouvez le déployer sur un répertoire partagé ou faire une ISO par exemple Smile

Vincent