Create a merged (slipstream) drop containing SQL Server 2008, Server Pack 1 and a Cumulative Update (CU) based on Server Pack 1

Today, I am going to show you how to create new source media that will slipstream the original source media, SQL Server 2008 Service Pack 1, and a CU based on service pack 1. Once you have created this drop, you can install SQL Server 2008 SP1 and a CU in a single step!

These instructions are for English SQL Server but will work with any language of SQL Server if you obtain the correct language.

Each time a new CU is released, you can repeat these steps.

1. Complete one of these steps to create a slipstream that contains RTM + SP1

a. Complete the steps located here to create a new slipstream drop.

b. Use your existing RTM + SP1 slipstream drop.

2. Rename the folder that you created above from SQLServer2008_FullSP1 to SQLServer2008_FullSP1_CU.

3. Download the latest Cumulative Update (CU) that is based on Service Pack 1. In my example, I will be using the 1st CU for SP1.

4. Open a command prompt and extract the packages as follows:

  • SQLServer2008-KB969099-IA64 /x:c:\SQLServer2008_FullSP1_CU\CU
  • SQLServer2008-KB969099-x64 /x:c:\SQLServer2008_FullSP1_CU\CU
  • SQLServer2008-KB969099-x86 /x:c:\SQLServer2008_FullSP1_CU\CU

Ensure you complete this step for all architectures to ensure the original media is updated correctly.

5. Copy Setup.exe and Setup.rll from the CU extracted location to original source media location

  • robocopy C:\SQLServer2008_FullSP1_CU\CU c:\SQLServer2008_FullSP1_CU Setup.exe
  • robocopy C:\SQLServer2008_FullSP1_CU\CU c:\SQLServer2008_FullSP1_CU Setup.rll

6. Copy all files, but NOT the folders and Microsoft.SQL.Chainer.PackageData.dll in c:\SQLServer2008_FullSP1_CU\CU\<architecture> to C:\SQLServer2008_FullSP1_CU\<architecture> to update the original files.

  • robocopy C:\SQLServer2008_FullSP1_CU\CU\x86 C:\SQLServer2008_FullSP1_CU\x86 /XF Microsoft.SQL.Chainer.PackageData.dll
  • robocopy C:\SQLServer2008_FullSP1_CU\CU\x64 C:\SQLServer2008_FullSP1_CU\x64 /XF Microsoft.SQL.Chainer.PackageData.dll
  • robocopy C:\SQLServer2008_FullSP1_CU\CU\ia64 C:\SQLServer2008_FullSP1_CU\ia64 /XF Microsoft.SQL.Chainer.PackageData.dll

7. Add CUSOURCE="{Full Path}\CU" to the defaultsetup.ini file located in the following locations:

  • C:\SQLServer2008_FullSP1_CU\x86
  • C:\SQLServer2008_FullSP1_CU\x64
  • C:\SQLServer2008_FullSP1_CU\ia64

NOTES:

  • The {Full path} needs to be the absolute path to the CU folder. If you will just be running from local folder it would be C:\SQLServer2008_FullSP1_CU. If you will eventually share this folder out, {Full path} would be \\MyServer\SQLServer2008_FullSP1_CU.
  • If you don't have a defaultsetup.ini, go back and ensure you have completed step 1 successfully.
  • See question #11 here on using a relative path.
  • Change the PCUSOURCE path from SQLServer2008_FullSP1 to SQLServer2008_FullSP1_CU

Sample default.ini:

;SQLSERVER2008 Configuration File

[SQLSERVER2008]

PCUSOURCE="\\myserver\SQLServer2008_FullSP1_CU\PCU"

CUSOURCE="\\myserver\SQLServer2008_FullSP1_CU\CU"

8. Now run the setup.exe as you normally would.

 

 

 

 

            

 

How can I tell I am slipstreaming:

 

1) You should see the "Update Setup Media Language Rule" on the Installation Rules dialog:

 image

2) You should see the Action indicate it is being slipstreamed and the Slipstream node should be shown:

image

3) You will see the PCUSource and CUSource parameters specified in the Summary log:

image

4) Results from SQL Discovery Report launched from Installation Center (first CU for SP1)

sqldiscoveryReport

Comments

  1. Delete c:SQLServer2008_FullSP1_CUCU
  2. Repeat the following steps that I have above: 2, 3, 4, 5, and 6. If you have NOT already slipstreamed a CU, just complete the steps above using the CU2 package.
  • Anonymous
    June 13, 2009
    Do you mean if i have not slipstreamed CU1, then does not need slipstream it, just slipstream the CU2?

  • Anonymous
    June 14, 2009
    Since CUs are cumulative, CU2 has all of the fixes in CU1.  So you can just use CU2.

  • Anonymous
    July 24, 2009
    Hi. Thank you for this solution, it works fine. But tell me please - can I redistribute this merged drop with my commercial software?

  • Anonymous
    July 28, 2009
    If the merged drop contains a CU, it cannot be redistributed until you file a redist request with Microsoft Product Support. Thanks, Peter Saddow [Microsoft]

  • Anonymous
    August 05, 2009
    Why are there no instructions between "Step 8" and "How I can tell I am slipstreaming."? I am installing SQL2008 SP1 onto a server with SQL2008 Enterprise edition. I followed the slipstream instructions to the letter.  When I select setup.exe under D:SQLServer2008_FullSP1_CU, it takes me to the usual SQL 2008 installation UI screens.  There are no options to install/update for SP1 or CU3.

  • Anonymous
    August 06, 2009
    If slipstream is working, then you should see the messages in the UI that I have indicated in the screenshots.  There is no option in the UI to select SP1 or CU3.

  • Anonymous
    January 02, 2010
    Hi, Posted a question here: http://social.msdn.microsoft.com/Forums/en/sqlsetupandupgrade/thread/0bda411d-f83f-4678-b147-e241d51d6fe9 Is it something i did wrong or is there an issue/limitation with the slipstream process? Thanks, Jonathan.

  • Anonymous
    February 03, 2010
    The comment has been removed

  • Anonymous
    July 20, 2011
    Do not do this for SQL Server 2008 R2 EXPRESS with SP1 - it does NOT work.

  • Anonymous
    February 23, 2012
    Will this same process work with SQL 2008 R2, SP1 and CU4?

  • Anonymous
    January 15, 2013
    How do I get to the Ready to install selection just to patch a CU to an existing SP2 Installation. I cannot bypass the previous selections?

  • Anonymous
    August 07, 2013
    Couldn't you just extract the CU packages for the different architectures into separate folders, like CU_x64, CU_x86 and point to them instead from the defaultsetup.ini files in step 7? Would be less hassle than to merge the CU packages together into one folder. Is that possible?