Cómo crear un instalador de SQL Server 2012 con CU1 integrado (Product Updates – Slipstream)
Hace un tiempo, creé un fichero batch para crear un Instalador SQL Server 2008 R2 con SP1 Integrado, conocido como Slipstream, ahora en SQL Server 2012 esto ha sido reemplazado con una nueva funcionalidad llamada Product Updates.
Con la funcionalidad Product Updates podemos integrar los Service Pack o Cumulative Updates al instalador de SQL Server, con esto ahorramos mucho tiempo, sobre todo cuando hay que hacer múltiples instalaciones.
La guía que he creado está basada en Product Updates in SQL Server 2012 Installation, a la que añado un fichero .bat que nos ahorra mucho tiempo.
Esta guía es para la versión en Inglés de SQL Server 2012. Estos son los pasos a seguir:
1. Copiar los archivos de instalación de SQL Server 2012 a C:\SQLServer2012
2. Descargar Microsoft® SQL Server® 2012 Cummulate Update 1, es necesario descargar las arquitecturas x86 y x64 y copiarlas a C:\
- SQLServer2012_RTM_CU1_kb2679368_11_0_2316_x86 (446573_intl_i386_zip.exe)
- SQLServer2012_RTM_CU1_kb2679368_11_0_2316_x64 (446572_intl_x64_zip.exe)
3. Crear un fichero .bat con el siguiente contenido y copiarlo a C:\
@ECHO OFF
::File Verification
IF NOT EXIST "C:\SQLServer2012\" GOTO ERROR
IF NOT EXIST "C:\446573_intl_i386_zip.exe" GOTO ERROR
IF NOT EXIST "C:\446572_intl_x64_zip.exe" GOTO ERROR
::Extract each of the SQL Server 2012 CU1 packages to C:\SQLServer2012\Updates
ECHO Extracting SP files to C:\SQLServer2012\Updates...
start /wait C:\446573_intl_i386_zip.exe /x:C:\SQLServer2012\Updates
ECHO Extract of SQLServer2012_RTM_CU1_kb2679368_11_0_2316_x86 (446573_intl_i386_zip.exe) Completed
start /wait C:\446572_intl_x64_zip.exe /x:C:\SQLServer2012\Updates
ECHO Extract of SQLServer2012_RTM_CU1_kb2679368_11_0_2316_x64 (446572_intl_x64_zip.exe) Completed
ECHO.
::Create or modify DefaultSetup.ini
IF NOT EXIST "C:\SQLServer2012\x86\DefaultSetup.ini" GOTO CREATEINI
ECHO Modifying DefaultSetup.ini
TYPE C:\SQLServer2012\x86\DefaultSetup.ini > C:\SQLServer2012\x86\Temp_DefaultSetup.ini
ECHO UpdateEnabled=TRUE >> C:\SQLServer2012\x86\Temp_DefaultSetup.ini
ECHO UpdateSource=.\Updates >> C:\SQLServer2012\x86\Temp_DefaultSetup.ini
DEL C:\SQLServer2012\x86\DefaultSetup.ini
REN C:\SQLServer2012\x86\Temp_DefaultSetup.ini DefaultSetup.ini
ECHO.
GOTO COPYINI
:CREATEINI
ECHO Creating or modifying DefaultSetup.ini
ECHO ;SQL SERVER 2012 Configuration File > C:\SQLServer2012\x86\DefaultSetup.ini
ECHO [OPTIONS] >> C:\SQLServer2012\x86\DefaultSetup.ini
ECHO UpdateEnabled=TRUE >> C:\SQLServer2012\x86\DefaultSetup.ini
ECHO UpdateSource=.\Updates >> C:\SQLServer2012\x86\DefaultSetup.ini
ECHO.
:COPYINI
::Copy DefaultSetup.ini from x86 to x64 folder
ECHO Copying DefaultSetup.ini from x86 to x64 folder
start /wait robocopy C:\SQLServer2012\x86 C:\SQLServer2012\x64 DefaultSetup.ini
ECHO.
ECHO ==============================================================================
ECHO OPERATION COMPLETED
ECHO Use C:\SQLServer2012\Setup.exe to install SQL Server 2012 + CU1
ECHO ==============================================================================
ECHO.
GOTO FIN
:ERROR
ECHO ==============================================================================
ECHO FILE VERIFICATION FAIL, PLEASE CHECK THE FOLLOWING:
ECHO THE DIRECTORY C:\SQLServer2012\ EXISTS
ECHO 446573_intl_i386_zip.exe FILE IS LOCATED IN C:\
ECHO 446572_intl_x64_zip.exe FILE IS LOCATED IN C:\
ECHO ==============================================================================
ECHO.
:FIN
PAUSE
4. Ejecutar el fichero .bat como administrador.
5. Cuando solicite una carpeta para extraer los ficheros, seleccionar C:\SQLServer2012\Updates
6. Utilizar C:\SQLServer2012\Setup.exe para realizar la instalación.
7. Se puede comprobar que la instalación contiene Product Updates en la pantalla Product Updates y Ready to Install:
Consultor Senior SQL Server & BI con 9 años de experiencia, MCSE Data Platform con conocimientos de toda la herramienta y enfocado principalmente a la detección y mejora de problemas de rendimiento en Base de Datos. En mi tiempo libre soy un gran aficionado a la fotografía de estilo urbano y de lugares abandonados.