Assim como a tempos ocorre com o Windows, finalmente agora podemos integrar os arquivos de uma mídia original do SQL Server 2008 (versão conhecida como RTM), aos arquivos do Service Pack e também dos Cumulatives Updates pós SP1.
É verdade que esta integração ainda gera um pouco mais de trabalho que a que pode ser feita com o Windows, mas devemos considerar que só o fato de podermos evitar a necessidade de instalação de um Service Pack após a instalação do SQL Server 2008 já é excelente, certo? Principalmente quando trabalhamos em ambientes críticos e com alta disponibilidade (cluster).
Bom, durante este artigo eu utilizo o utilitário de linha de comando robocopy.exe para fazer a cópia de alguns arquivos. Este utilitário faz parte do Resource Kit do Windows Server 2003 e pode ser baixado gratuitamente no link http://www.microsoft.com/downloads/details.aspx?FamilyID=9d467a69-57ff-4ae7-96ee-b18c4790cffd&displaylang=en
Integrando o SQL Server 2008 SP1
Nos passos abaixo demonstrarei como integrar os arquivos RTM do SQL Server 2008 ao arquivos do SQL Server 2008 SP1 e também ao Cumulative Update 2, até o momento o update mais recente que temos pós SQL Server 2008 SP1. Vale lembrar que embora eu esteja usando o SP1 + CU2, os passos descritos aqui são os mesmos independente do Service Pack ou do Cumulative Update!
Bom, como resultado desta integração, futuras instalações do SQL Server 2008 já conterão o SP1 + CU2, ou seja, chega de instalar o SQL Server e depois ter que passar o SP ou CU2 mais recente. A partir de agora isso poderá ser executado em uma única tacada. Sendo assim, vamos ao que interessa….
Há, uma observação importante… notem que neste artigo estou usando a barra de separação de diretório de forma errada, exemplo C:/SQLServer2008_RTM, portanto, durante seus testes não deixem de corrigir isso!! Infelizmente tenho uma limitação, acho que no PHP, que sempre que utilizo a barra correta ela desaparece. Aliás, se alguém souber como resolver isso me avise enviando um mensagem privada.
Passo 1: Crie o diretório C:/SQLServer2008_RTM,
Passo 2: Crie o diretório C:/SQLServer2008_RTM/SP1,
Passo 3: Crie o diretório C:/SQLServer2008_RTM/CU2,
Passo 4: Crie o diretório C:/SQLServer2008_SP1,
Passo 5: Crie o diretório C:/SQLServer2008_SP1/CU2,
Passo 6: Pegue o DVD do SQL Server 2008 e copie o conteúdo original do DVD para o caminho C:/SQLServer2008_RTM,
Passo 7: Faça download do SQL Server 2008 SP1 no link http://www.microsoft.com/downloads/details.aspx?FamilyID=66ab3dbb-bf3e-4f46-9559-ccc6a4f9dc19&displaylang=en , salvando os arquivos no caminho C:/SQLServer2008_SP1. Você deve baixar os seguintes arquivos:
SQLServer2008SP1-KB968369-IA64-ENU.exe
SQLServer2008SP1-KB968369-x64-ENU.exe
SQLServer2008SP1-KB968369-x86-ENU.exe
Nota: Se sua intenção é instalar o SQL Server 2008 em um ambiente x86 (32bits), você não precisa obrigatoriamente fazer o slipstream para as plataformas x64 e IA64. Fazer a atualização apenas para a plataforma x86 deverá funcionar, no entanto, a recomendação é que o slipstream seja feito para as três plataformas. Isso evitará que quando você precisar fazer uma instalação em um ambiente x64 sua mídia esteja inconsistente.
Passo 8: Faça a extração dos arquivos dos pacotes do SP1 para o caminho C:/SQLServer2008_RTM/SP1. Para isso, abra um prompt do DOS e navegue até o caminho C:/SQLServer2008_SP1 e execute as linhas de comando abaixo:
SQLServer2008SP1-KB968369-IA64-ENU.exe /x:C:/SQLServer2008_RTM/SP1
SQLServer2008SP1-KB968369-x64-ENU.exe /x:C:/SQLServer2008_RTM/SP1
SQLServer2008SP1-KB968369-x86-ENU.exe /x:C:/SQLServer2008_RTM/SP1
Nota: Certifique-se de fazer a extração dos arquivos para as três plataformas.
Passo 9: Ainda no prompt do DOS, copie os arquivos setup.exe e setup.rll do caminho C:/SQLServer2008_RTM/SP1 para o caminho C:/SQLServer2008_RTM (onde estão os arquivos originais).
robocopy C:/SQLServer2008_RTM/SP1 C:/SQLServer2008_RTM Setup.exe
robocopy C:/SQLServer2008_RTM/SP1 C:/SQLServer2008_RTM Setup.rll
Passo 10: Copie todos os arquivos (exceto os diretórios e o arquivo Microsoft.SQL.Chainer.PackageData.dll ), do caminho C:/SQLServer2008_RTM/SP1/<plataforma> para C:/SQLServer2008_RTM/<plataforma> para atualizar assim os arquivos originais.
robocopy C:/SQLServer2008_RTM/SP1/ia64 C:/SQLServer2008_RTM/ia64 /XF Microsoft.SQL.Chainer.PackageData.dll
robocopy C:/SQLServer2008_RTM/SP1/x64 C:/SQLServer2008_RTM/x64 /XF Microsoft.SQL.Chainer.PackageData.dll
robocopy C:/SQLServer2008_RTM/SP1/x86 C:/SQLServer2008_RTM/x86 /XF Microsoft.SQL.Chainer.PackageData.dll
Passo 11: Verifique se você possui o arquivo defaultsetup.ini nos seguintes caminhos:
C:/SQLServer2008_RTM/ia64
C:/SQLServer2008_RTM/x64
C:/SQLServer2008_RTM/x86
Caso exista, abra o arquivo e adicione a entrada PCUSOURCE=”.SP1″ como demonstrado abaixo…
;SQLSERVER2008 Configuration File
[SQLSERVER2008]
….
PCUSOURCE=”./SP1″ (Atenção: Aqui você também deve utilizar a barra correta de separação de diretório)
Caso o arquivo defaultsetup.ini não exista, crie um com o conteúdo abaixo e depois copie-o para os caminhos citados acima.
;SQLSERVER2008 Configuration File
[SQLSERVER2008]
PCUSOURCE=”./SP1″ (Atenção: Aqui você também deve utilizar a barra correta de separação de diretório)
Nota: Este arquivo é o que informará ao instalador do SQL Server onde estão os arquivos do Service Pack 1!!
Passo 12: Tudo pronto!! Agora basta executar o setup.exe para instalar o SQL Server 2008 já com o SP1 integrado. Se preferir você
pode queimar um novo DVD copiando todo o conteúdo da pasta SQLServer2008_RTM ou ainda jogando esta pasta para um caminho de rede e usá-la em futuras instalações do SQL Server 2008.
OK, agora que os arquivos estão integrados, como fazer para garantir que a integração realmente foi feita com sucesso? Bom, para certificar-se que a integração realmente foi executada com sucesso, durante a instalação do SQL Server 2008 você deverá notar a presença da regra “Update Setup Media Language Compatibility” na página “Instalation Rules”. Note que ela está como Passed !!

Outro ponto de constatação está na página “Ready to install” onde você deverá notar a presenta dos ítens destacados na figura abaixo…

Ou ainda, após a instalação do SQL Server 2008 basta verificar as propriedade “productlevel” e “productversion“. A versão 10.1.2531.0 corresponde ao SP1.

Integrando o Cumulative Update 2
Agora que o Service Pack 1 já está integrado aos arquivos originais do SQL Server 2008, como fazemos para integrar também os Cumulative Updates (CUs)? Bom, em verdade basta você executar os mesmos passos executados para integrar o SP1. Os mesmos passos também devem ser seguidos para integrar futuros CUs que vierem a ser liberados.
Sendo assim, a partir do momento que o SP1 já estiver integrado, siga os passos abaixo para integrar um CU. No meu exemplo estou integrando o CU2 que até o momento é o último update para o SQL Server 2008 SP1.
Passo 1: Faça download dos arquivos do Cumulative Update 2 (CU2), acessando o link http://support.microsoft.com/hotfix/KBHotfix.aspx?kbnum=970315&kbln=en-us e salve os arquivos no caminho C:/SQLServer2008_SP1/CU2.
Assim como foi feito para o SP1, você também deverá baixar os arquivos correspondentes às três arquiteturas ou plataformas. Para isso, após acessar a página de solicitação do CU2, na etapa 1 clique sobre o link “Exibir hotfixes de todos os idiomas e plataformas (3)” e selecione as três opções de plataformas, informe seu e-mail e aguarde o recebimento de um e-mail com os links para baixar os arquivos. Não se preocupe com a questão do idioma pois os CUs são multilinguagens.
Nota: Fique atento quando receber o e-mail com os links para baixar os arquivos (1 link para cada plataforma). Ao executar os arquivos baixados será solicitado um senha…está senha no e-mail, logo abaixo de cada link. Após informar a senha você deverá então informar um caminho para extrair os arquivos do CU2.
Passo 2: Extraia os arquivos do CU2 para o caminho C:/SQLServer2008_SP1/CU2. Os arquivos são:
SQLServer2008-KB970315-IA64.exe
SQLServer2008-KB970315-x64.exe
SQLServer2008-KB970315-x86.exe
Passo 3: Concluída a extração dos arquivos acima, abra um prompt do DOS, navegue até o caminho C:/SQLServer2008_SP1/CU2 e extraia os arquivos do CU2 para o caminho C:/SQLServer2008_RTM/CU2.
SQLServer2008-KB970315-IA64.exe /x:C:/SQLServer2008_RTM/CU2
SQLServer2008-KB970315-x64.exe /x:C:/SQLServer2008_RTM/CU2
SQLServer2008-KB970315-x86.exe /x:C:/SQLServer2008_RTM/CU2
Nota: Assim como no SP1, certifique-se de fazer a extração dos arquivos para as três plataformas.
Passo 4: Ainda no prompt do DOS, copie os arquivos setup.exe e setup.rll do caminho C:/SQLServer2008_RTM/CU2 para o caminho C:/SQLServer2008_RTM.
robocopy C:/SQLServer2008_RTM/CU2 C:/SQLServer2008_RTM Setup.exe
robocopy C:/SQLServer2008_RTM/CU2 C:/SQLServer2008_RTM Setup.rll
Passo 5: Copie todos os arquivos (exceto os diretórios e o arquivo Microsoft.SQL.Chainer.PackageData.dll) do caminho C:/SQLServer2008_RTM/CU2/<plataforma> para C:/SQLServer2008_RTM/<plataforma>.
robocopy C:/SQLServer2008_RTM/CU2/ia64 C:/SQLServer2008_RTM/ia64 /XF Microsoft.SQL.Chainer.PackageData.dll
robocopy C:/SQLServer2008_RTM/CU2/x64 C:/SQLServer2008_RTM/x64 /XF Microsoft.SQL.Chainer.PackageData.dll
robocopy C:/SQLServer2008_RTM/CU2/x86 C:/SQLServer2008_RTM/x86 /XF Microsoft.SQL.Chainer.PackageData.dll
Passo 6: Localize o arquivo defaultsetup.ini nos caminhos abaixo e adicione a entrada CUSOURCE=”.CU2″ como no exemplo.
C:/SQLServer2008_RTM/ia64
C:/SQLServer2008_RTM/x64
C:/SQLServer2008_RTM/x86
;SQLSERVER2008 Configuration File
[SQLSERVER2008]
…
PCUSOURCE=”./SP1″
CUSOURCE=”./CU2″
(Atenção: Aqui você também deve utilizar a barra correta de separação de diretório)
Passo 7: Tudo pronto !! Agora basta executar o setup.exe para instalar o SQL Server 2008 já com o SP1 + CU2 integrados.
Se você seguiu todos os passos corretamente a estrutura da sua pasta SQLServer2008_RTM deve estar como a da figura abaixo. Note que além das pastas representando cada arquitetura (ia64, x64 e x86)também temos as pastas referentes ao SP1 e ao CU2. Se desejar agora você pode queimar um novo DVD com todo este conteúdo ou ainda salvá-lo em um caminho de rede para usá-lo em futuras instalações.

Para certificar-se que a integração realmente foi executada com sucesso, durante a instalação do SQL Server 2008 você deverá notar a presença da regra “Update Setup Media Language Compatibility” como Passed.

Outro ponto de constatação está na página “Ready to install” onde deverá notar a presenta dos ítens destacados na figura abaixo. Note que agora tem-se os ítens referente ao SP1 e também ao CU2.

Ou ainda, após a instalação basta verificar a propriedade “productlevel” e “productversion”. A versão 10.1.2714.0 corresponde ao Cumulative Update 2.

Bom, é isso aí pessoal… a partir de agora chega de ficar instalando o SQL Server e os SPs ou mesmo os CU mais recentes :). Caso tenham dúvidas, não deixem de visitar o blog do SQL Server Setup Team, no post SQL Server 2008 Slipstream Frequently Asked Questions eles respondem às dúvidas mais comuns. Ou ainda usem o nosso fórum.
Abraços
Nilton Pinheiro