Una de las cosas que nos sucede muy a menudo es que cuando instalamos un SQL Server luego de debemos aplicar el ultimo services pack y/o hotfix.
Esto no es una tarea para nada difícil pero son dos pasos en la instalación, esto además de consumirnos mas tiempo en la tarea también puede pasar que nos olvidemos de hacerlo y tengamos nuestro servidor sin los parches adecuados.
En esta guía lo que vamos a ver es como armar un paquete de instalación de SQL Server que incluya además el services pack o hotfix.
La metodología que vamos a utilizar se denomina SlipStreamed, este método apareció en SQL Server 2008 a partir de su primer Service Pack.
Paso 1
Debe copiar el medio de instalación de su SQL server a una carpeta, por ejemplo en mi caso arme una carpeta en el disco D llamada SQL2008R2SP1 entonces copiare el medio de SQL original en D:\SQL2008R2SP1
Aquí le aconsejo que copie todo el medio donde se incluye el instalador de x86 y x64.
Paso 2
Baje el hotfix o service pack, en mi caso baje el service pack 1 de SQL 2008 R2, recuerde que debe bajarlo en el mismo idioma que tiene el medio de instalación, en mi caso es en ingles
Recuerde de bajar tanto el de x86 como el de x64 así luego nos queda un solo medio de instalación para ambas tecnologías
SQLServer2008R2SP1-KB2528583-x64-ENU.exe
SQLServer2008R2SP1-KB2528583-x86-ENU.exe
Paso 3
Debemos extraer los contenidos de los archivos que hemos bajado en el punto 2 a una carpeta interna del paso 1.
En mi caso seria D:\SQL2008R2SP1\SP1.
Para hacer esta operación desde la línea de comandos haremos lo siguiente
D:\>SQLServer2008R2SP1-KB2528583-x64-ENU.exe /x:d:\sql2008r2sp1\sp1
|
D:\>SQLServer2008R2SP1-KB2528583-x86-ENU.exe /x:d:\sql2008r2sp1\sp1
|
Paso 4
Copiar los archivos que se descomprimieron en el paso anterior en la carpeta raíz del instalador exceptuando Microsoft.SQL.Chainer.PackageData.dll,
esto se debe hacer por cada una de las plataformas de instalación (x64 y x86)
En el caso del ejemplo deberíamos copiar desde
d:\sql2008r2sp1\sp1\x64 a d:\sql2008r2sp1\x64 y
d:\sql2008r2sp1\sp1\x86 a d:\sql2008r2sp1\x86
Yo voy a utilizar el comando Robocopy que ya viene en mi SO.
D:\>robocopy D:\SQL2008R2SP1\SP1\x86 D:\SQL2008R2SP1\x86 /XF Microsoft.SQL.Chainer.PackageData.dll
|
D:\>robocopy D:\SQL2008R2SP1\SP1\x64 D:\SQL2008R2SP1\x64 /XF Microsoft.SQL.Chainer.PackageData.dll
|
Paso 5
Copiar Setup.exe y Setup.rll que se encuentra dentro de la carpeta d:\sql2008r2sp1\sp1 hacia d:\sql2008r2sp1\ reemplazando los que están originales.
D:\>robocopy D:\SQL2008R2SP1\SP1 D:\SQL2008R2SP1 Setup.exe
|
D:\>robocopy D:\SQL2008R2SP1\SP1 D:\SQL2008R2SP1 Setup.rll
|
Paso 6
Editar el archivo defaultsetup.ini que se encuentra en cada una de las carpetas del medio original para cada plataforma (x86 y x64), en el caso del ejemplo deberíamos editar los archivos de las siguientes ubicaciones
D:\SQL2008R2SP1\x86\DefaultSetup.ini
D:\SQL2008R2SP1\x64\DefaultSetup.ini
A cada archivos hay que agregarle la siguiente línea
PCUSOURCE=".\SP1"
Ya tenemos listo el proceso y ahora simplemente ejecutaremos el setup.exe .