Как интегрировать SP1 в оригинальный образ SQL Server 2008 R2
Добрый день! Увжаемые читатели и гости, крупного IT блога Pyatilistnik.org. Недавно мне потребовалось обновить SQL 2005 до SQL 2008 R2. Как оказалось на MS нет дистрибутивов SQL 2008 R2 с интегрированными сервис паками (либо я очень плохо искал). Будучи существом ленивым, я решил интегрировать сервис пак в оригинальный образ. На просторах интернета была найдена соответствующая статья, поэтому данный пост всего лишь её перевод. Кто хочет читать оригинал, идет в самый низ и нажимает на ссылку. Внимание, в статье описывается интеграция именно SP1. Так как в настоящее время существует SP2, и даже SQL 2012 то статья немного устарела, но сообщать мне об этом не нужно
Далее необходимые шаги для интеграции SP1:
- Копируем содержимое оригинального образа SQL Server 2008 R2 в директорию C:\SQLServer2008R2_SP1
- Скачиваем SQL Server 2008 R2 SP1 для всех архитектур. Нам необходимы следующие пакеты:
SQLServer2008R2SP1-KB2528583-x64-ENU.exe
SQLServer2008R2SP1-KB2528583-x86-ENU.exe
- Извлекаем их содержимое в директорию C:\SQLServer2008R2_SP1\SP следующим образом:
SQLServer2008R2SP1-KB2528583-IA64-ENU.exe /x:C:\SQLServer2008R2_SP1\SP
SQLServer2008R2SP1-KB2528583-x64-ENU.exe /x:C:\SQLServer2008R2_SP1\SP
SQLServer2008R2SP1-KB2528583-x86-ENU.exe /x:C:\SQLServer2008R2_SP1\SP
- Копируем Setup.exe из директории с извлеченным . Например с помощью команды robocopy:
- Копируем все файлы, кроме Microsoft.SQL.Chainer.PackageData.dll, из директории C:\SQLServer2008R2_SP1\SP\<architecture> to C:\SQLServer2008R2_SP1\<architecture> для обновления оригинальных файлов:
robocopy C:\SQLServer2008R2_SP1\SP\x64 C:\SQLServer2008R2_SP1\x64 /XF Microsoft.SQL.Chainer.PackageData.dll
robocopy C:\SQLServer2008R2_SP1\SP\ia64 C:\SQLServer2008R2_SP1\ia64 /XF Microsoft.SQL.Chainer.PackageData.dll
- Проверяем имеется ли у нас файл DefaultSetup.INI в следующих дериториях:
C:\SQLServer2008R2_SP1\x86
C:\SQLServer2008R2_SP1\x64
C:\SQLServer2008R2_SP1\ia64
Если файл DefaultSetup.INI имеется, добавляем в него строку:
Если файла нет, создаем его и добавляем следующеме строки: ;SQLSERVER2008 R2 Configuration File [SQLSERVER2008] PCUSOURCE=".\SP"
и копируем в данные директории
C:\SQLServer2008R2_SP1\x86
C:\SQLServer2008R2_SP1\x64
C:\SQLServer2008R2_SP1\ia64
Данный файл служит для того, чтобы программа установки знала где расположены файлы сервис пака. Запускаем setup.exe и ставим или обновляем SQL. Как узнать что интеграция работает. В окне Installation Rules успешно проходит тест "Update Setup Media Language Rule".