“Product Update” in SQL Server code-named “Denali”

Overview:

Product Update is a new feature in Microsoft SQL Server Code-Named “Denali”, Community Technology Preview 3 (CTP 3) Setup. It integrates the latest product updates with the main product installation so that the main product and its applicable updates are installed at the same time. Product Update can search Microsoft Update, Windows Server Update Services (WSUS), a local folder, or a network share for applicable updates. After Setup finds the latest versions of the applicable updates, it downloads and integrates them with the current SQL Server setup process. Product Update can pull in a GDR, cumulative update (CU), service pack, or service pack plus cumulative update. Product Update functionality is an extension of the Slipstream feature that was available in SQL Server 2008 Service Pack 1. By default, Product Update searches the Windows Update service on the client computer for applicable updates. To disable the Product Update functionality or to discover updates from a file share or folder, you can launch SQL Server Setup using command line parameters.

 

You can give Product Update a try using the SQL Server “Denali” CTP3 release. See below for more information.

 

Using Product Update with SQL Server Setup:

The Product Update feature is integrated with SQL Server Setup. Here is a look the installation wizard, using the default Product Update functionality.

 

1. Launch Setup from your source media by double-clicking on Setup.exe

2. Select “New SQL Server stand-alone installation…”

image

3. After the Installation Wizard is launched, Setup will check the system. If there aren’t any failures, click OK. If there are failures, you need to address the failures before continuing.

image

4. Setup will display the applicable updates that have been found. If you want the updates to be included, just click Next. If there is a failure with searching for updates, ensure a Windows Update scan works.

image

5. On the next dialog, Setup will provide you the status of the included the Setup update.

image

6. At this point, continue to navigate through the Installation Wizard. On the Ready to Install dialog, you can see the updates have been included:

image

7. After the installation completes, on the Complete dialog you can see Setup was successful including the updates:

image

8. Now, if you run the SQL Server Discovery Report you will see the version of SQL Server “Denali” is a follows:

image

 

Default Behavior:

By default, SQL Server searches for product updates through the Windows Update service. This option works well when the client computer has Internet access and corporate policy does not state which updates can be used by SQL Server Setup. In this mode, a user does not have much flexibility on which updates to include. The user can only choose to exclude the discovered updates on the Product Updates page during SQL Server setup. In this default mode, the Windows Update service can obtain updates through WSUS in addition to the live Microsoft Update service. The WSUS administrator controls which updates SQL Server Setup can include, download, and install.

 

Customizing Product Update

To override the default behavior, such as disabling the Product Update feature or modifying the update search location, you can set the following command-line parameters:

 

UpdateEnabled

The value of the UpdateEnabled parameter specifies whether SQL Server Setup should search and include product updates. Valid values are TRUE and FALSE or 1 and 0. For example:

Command line Parameter/Value Description
/UpdateEnabled=True Includes the applicable updates within the installation. This is the default.
/UpdateEnabled=False Skips the product updates in the installation.

 

UpdateSource

The value of the UpdateSource parameter specifies the location where SQL Server Setup searches for product updates. For example:

  Command line Parameter/Value Description
/UpdateSource=MU “MU” is the default value and specifies to search for updates through the Windows Update service, which can be point to the Live Microsoft Update or Windows Server Update Service.
/UpdateSource=<path to updates> When you specify a valid path, Setup will search for applicable update within this folder. When you download the SQL Server updates manually to a UNC path or a local share, specify UpdateSource as a UNC path such as \\servername\sharename or a locally valid path such as C:\MyUpdates. Run the Setup.exe file from the source media by specifying the UpdateSource parameter.

By using the UpdateSource parameter, you can place all the approved updates into a single folder and rely upon Setup to determine what updates are applicable, based on the version and architecture of Setup that is being run.

Examples:

  • /UpdateSource = C:\somefolder

  • /UpdateSource = \\servername\sharename

The specified path can also be relative to where you run Setup.exe. For example:

  • /UpdateSource = ".\MyUpdates"

 

NOTE: It is best practice to put quotes around the specified path, especially if there is a space in the path.

How to use these parameters:

The UpdateSource and UpdateEnabled parameters can be specified on the command line, within a configuration file (e.g. ConfigurationFile.INI) , and DefaultSetup.ini. Specifying the parameters within the DefaultSetup.ini is the recommended practice when you want to control the Product Update behavior across an enterprise or multiple installations.

 

Command line

The following is an example of using the parameters from the command line:

  • Setup.exe /UpdateEnabled=TRUE /UpdateSource="C:\MyUpdates"

 

Configuration File

Example of how to specify the configuration file when running Setup:

  • Setup.exe /ConfigurationFile=ConfigurationFile.ini

 

DefaultSetup.ini

If you have the DefaultSetup.ini file in the \x86 and \x64 folders at the root level of the SQL Server source media, open the DefaultSetup.ini file, and then add the UpdateEnabled or UpdateSource parameters to the file. If the DefaultSetup.ini file does not exist, you can create it and copy it to the \x86 and \x64 folders at the root level of the SQL Server source media.

The following is an example of a DefaultSetup.ini file:

image

 

Give Product Update a try using SQL Server “Denali” CTP3 release

We are make a test update available at the end of July, so you can give the feature a try before the final release of SQL Server “Denali”. See here for more information.

Comments

  • Anonymous
    July 19, 2011
    So, we can use this feature to automate CU and hotfix download for SQL Server.

  • Anonymous
    July 19, 2011
    The comment has been removed

  • Anonymous
    July 24, 2011
    There appears to be a typo in your table under /UpdateSource - it shows "/UpdateEnabled=<path to updates>" shouldn't that be "/UpdateSource=<path to updates>"? I can't wait to test out this feature at the end of the month.

  • Anonymous
    July 25, 2011
    Thanks for the feedback. Yes, there was a typo. I have fixed the command like parameter...

  • Anonymous
    July 26, 2011
    Does /UpdateSource=<path to updates> search subfolders?  After a few years of updates there will be a lot of files in the updates folder, and it is often convenient to group these into a subfolder for each service pack.

  • Anonymous
    July 26, 2011
    The comment has been removed

  • Anonymous
    July 26, 2011
    How will this process allow a site to build a Denali instance to a specific fix level?  My site (like many others) mandates a specific fix level for all new server builds, and only updates this every 4 months.  How can we ensure that all new builds within this period do not get any new fixes that have been released by Microsoft during this time?

  • Anonymous
    July 26, 2011
    The comment has been removed