Microsoft KB Archive/842960

From BetaArchive Wiki

Article ID: 842960

Article Last Modified on 11/2/2007



APPLIES TO

  • Microsoft SQL Server 7.0 Standard Edition
  • Microsoft SQL Server 2000 Personal Edition
  • Microsoft SQL Server 2000 Standard Edition
  • Microsoft SQL Server 2000 Workgroup Edition
  • Microsoft SQL Server 2000 Developer Edition
  • Microsoft SQL Server 2000 Enterprise Edition



SUMMARY

This article describes a hotfix installer for Microsoft SQL Server that is used to apply 32-bit hotfixes on instances of SQL Server 2000 or SQL Server 7.0.

back to the top

INTRODUCTION

This article describes the 32-bit SQL Server hotfix installer that is used to apply hotfixes to stand-alone or clustered instances of SQL Server 2000 or SQL Server 7.0. You can run this hotfix installer only on computers that are running Microsoft Windows 2000 or later versions of the Windows operating system. Also, you cannot use the hotfix installer for Microsoft SQL Server 2000 Desktop Engine (Windows) or Microsoft SQL Server 2000 (64-bit).

Hotfixes for SQL Server are packaged and delivered as self-extracting executable files. The hotfix installer helps you install hotfixes by using a graphical user interface (GUI)-based Setup program. The installer can also run unattended to automate the hotfix installation process for your whole organization.

You can use the hotfix installer to install SQL Server 2000 hotfix build 977 and later builds.

For more information about how to install an x86-based SQL Server 2000 Service Pack 3 or greater hotfix that has build 761 through build 977, click the following article number to view the article in the Microsoft Knowledge Base:

330391 SQL Server hotfix installer


For more information about how to install an x86-based SQL Server 2000 Service Pack 3 hotfix on a computer that is running Microsoft Windows 98, Microsoft Windows Millennium Edition, or Microsoft Windows NT, click the following article number to view the article in the Microsoft Knowledge Base:

330391 SQL Server hotfix installer


For more information about how to install an IA-64-based SQL Server 2000 Service Pack 3 or greater hotfix, click the following article number to view the article in the Microsoft Knowledge Base:

872912 Description of the 64-bit SQL Server 2000 hotfix installer


back to the top

How the hotfix installer files are named

Microsoft has adopted a standardized naming schema for the hotfix installer packages in SQL Server. The name of the hotfix installer executable file includes information such as the following:

  • The product name
  • The number of the article that describes the hotfix
  • The version number of the hotfix
  • The process architecture that the hotfix installer package is built for
  • The language that the hotfix installer is intended for

For more information about the new naming schema for Microsoft SQL Server software update packages, click the following article number to view the article in the Microsoft Knowledge Base:

822499 New naming schema for Microsoft SQL Server software update packages


back to the top

How to use the hotfix installer

To start the hotfix installation process, you must log on to the computer with a user account that has local administrative credentials. You can then run the self-extracting executable file. When you run the self-extracting executable file, the files that are related to the hotfix are extracted from the hotfix package and stored on the computer.

If you experience disk space errors when you run the self-extracting executable file, see the following article in the Microsoft Knowledge Base:

301913 BUG: Error message "There is not enough space on drive" occurs when you extract SQL Server 2000 downloads


When you start the hotfix installation process, the GUI-based hotfix installer starts, and the GUI guides you through the rest of the installation process.

back to the top

List of files that the hotfix updates

The list of files that are updated by the hotfix installer is located in a .inf file (Update.inf). To review the file list, you must run the hotfix executable file and extract the .inf file.

To obtain the list of the files that the hotfix installer updates, follow these steps:

  1. Start the self-extracting executable file that corresponds to the hotfix. Continue the Setup program until you see a message that the files are being extracted.


The folder that the files are extracted to appears in the GUI of the Setup program. By default, the files are extracted to a folder that has a name that is similar to the following:

C:\GUID

Note The GUID is generated dynamically. If you cancel the Setup program at this step, all the extracted files are removed from the C:\GUID folder.

  1. Locate the Update.inf file in the C:\GUID\update folder.
  2. To obtain a complete list of files that are being updated, see the [SourceDisksFiles] section of the Update.inf file.

Note You can also obtain the list of files that are updated by a hotfix from the Microsoft Knowledge Base article that corresponds to the hotfix. The article number is shown in the first screen of the hotfix installer.

back to the top

How the hotfix installer works

When you run a hotfix installer that is packaged as a self-extracting executable, the hotfix installer performs the following operations:

  • The hotfix installer extracts the files that are packaged in the self-extracting executable, to a temporary folder that is similar to the following:

    C:\GUID

  • The hotfix installer verifies the architecture that your computer is built on. If the hotfix installer cannot be installed on the architecture of your computer, you may receive a message that the hotfix installer is not valid. For example, on an x86-based computer, when you try to run a hotfix installer that is compiled to run on Itanium-based architecture, you may receive a message that is similar to the following:

    Update.exe is not a valid Win32 application.

  • The hotfix installer verifies that the user account that you used to log on to the computer has administrative credentials. If the user account does not have administrative credentials, you may receive a message that is similar to the following:

    You do not have permission to update OperatingSystem.
    Please contact your system administrator.

  • The hotfix installer verifies the operating system that is running on your computer. If the operating system does not qualify for the hotfix, you may receive a message that is similar to the following:

    The patch installer that you are running is meant for another operating system and is not supported on this operating system. To proceed, download the product patch for this operation system and retry the installation.

  • The hotfix installer automatically detects all the instances of a SQL Server and enumerates the list of the instances that qualify for the update. You may see that all the instances of SQL Server that are running on the computer appear in the GUI of the Setup program. From the list, you can select a subset of instances that you want the hotfix to be applied on. In the GUI of the Setup program, the instances of SQL Server that do not qualify for the hotfix are shown as disabled. You cannot select the instance of SQL Server that is disabled.

    To qualify for the hotfix update, the SQL Server installation must satisfy certain requirements. For example, if the hotfix requires that you install Microsoft SQL Server 2000 Service Pack 3 (SP3), you must install SQL Server 2000 SP3 before you run this hotfix.

    If the instances of SQL Server do not qualify for the hotfix, you may receive messages that are similar to the following based on the reason that the hotfix did not qualify:

    Due to SQL Server service pack requirements, this machine does not have a product that matches this installation package. To proceed, refer to installation package requirements in the release notes, install the required SQL Server service pack, and then run the installation again.

    Due to SQL Server language compatibility requirements, this machine does not have a product that matches this installation package. To proceed, you must download and run the installation package that matches the locale setting of your computer.

    Due to SQL Server edition requirements, this computer does not have a product that matches this installation package. To proceed, refer to the release notes for this installation. You must run an installation package that is compatible with the SQL Server instance to be updated.


    Note The Microsoft Knowledge Base article that refers to the hotfix has more information about the requirements for applying this update.

    The hotfix installer detects the instances of SQL Server that are clustered. The hotfix installer also detects the active node of the instance of the SQL Server that is clustered.
  • The hotfix installer prompts you for the authentication information that you used to connect to the instance of SQL Server. For example, the hotfix installer prompts you for SQL Server authentication or Windows authentication. If you select SQL Server authentication, you must provide the password for the system administrator user account (sa). If you want to use SQL Server authentication, you must make sure that the instance of SQL Server is configured for Mixed Mode security.

    If you select Windows authentication, you must be logged on to the computer by using an account that is a part of the System Administrators server role for the instance of SQL Server you are upgrading. If the authentication information is not correct, you may receive a message that is similar to the following:

    One or more SQL Server instances could not verify your account information.

    If you selected an instance of SQL Server that is clustered and the instance is an active node, the hotfix installer prompts you for remote logon information, and then it prompts you for the authentication information that is used to connect to the instance of SQL Server.

  • The hotfix installer stops both the MSSQLSERVER service and the SQL Server Agent services for the instance that is being upgraded. If you are updating Microsoft SQL Server Analysis Services, the MSOLAPService service is stopped.
  • If the files that are to be updated are locked by another service or process, the hotfix installer does not block the installation. The hotfix installer examines the version of the files and replaces the files with the corresponding later versions. When the installation is completed, the status of the instance of SQL Server appears as "Reboot Required" in the GUI of the Setup program.
  • The hotfix installer replaces the existing files with the new files that were included with the hotfix. To do this, the program searches the destination computer to verify that the files are present. If the files exist on the destination computer, the computer qualifies for a replacement. After a file passes this check, the file version is compared with the source file. For files that do not have a version number, the program uses the time and date information. This process creates a list of files to install.

    For each file that is to be replaced, the file is first backed up to a backup folder. This backup folder is created in the %windir% folder.

    The hotfix installer never replaces a file that has a later version with a file that has an earlier version.
  • Runs the scripts.

back to the top

How to apply a hotfix on a cluster

If you selected an instance of SQL Server that is clustered and if the instance is an active node, the hotfix installer prompts you to enter the remote logon information. The remote logon information is used to connect to the remote nodes and run the remote processes. The hotfix installer takes the SQL Server cluster group offline and updates the binaries on all the passive nodes of the cluster. The remote processes are used to update the passive nodes of the cluster.

Note To install a hotfix in a cluster environment, the Task Scheduler service must be running. If the Task Scheduler service is disabled, the hotfix installation fails, and you receive the following error messages in the Setup log file:

76.453: SQL DLL: FailedInstallation() returned 11009
76.453: DoInstallation: FailedInstallation Failed: 0x2b01



Note If the node that you run the hotfix installer on is not the active node, the instances of SQL Server that are clustered may appear disabled in the Setup program GUI.

When you try to install a hotfix on a cluster, you may notice that the installation returns a failure only if the installation fails on all the nodes of the cluster.

back to the top

How to perform an unattended installation

An unattended installation is similar to the interactive installation that is described in the "How to use the hotfix installer" section. To start an unattended installation of a hotfix, use the command-line parameters with the self-extracting executable that corresponds to the hotfix.

When you run the self-extracting executable that corresponds to the hotfix at the command prompt, you can use the following command-line parameters:

  • /help: Causes the hotfix installation to display the details about the command-line parameters that are available.
  • /quiet: Causes the hotfix installation to run in the silent mode.
  • /reportonly: Shows the updates that are being applied and the state of the computer with the products and their version, the service pack level, the language, and the hotfix level. If this command-line parameter is used with the /quiet parameter, the report is written to the log file.
  • /allinstances: Applies the hotfix on all the instances of the SQL Server that qualify for the hotfix.
  • /INSTANCENAME: Specifies the instances of the SQL Server that you want the hotfix to be applied on. For example, /INSTANCENAME=yourinstancename.


If you want to apply the hotfix on multiple instances, you can use a comma delimiter to separate the name of the instances. For example, /INSTANCENAME=InstanceName1, InstanceName2, InstanceName3.

If any instance in the list does not exist or does not qualify for the hotfix, the installation is blocked. The hotfix is not applied to a subset of instances.

  • /USER: Specifies the user account that is used to connect to all nodes of a cluster. This account must be a local administrator on all nodes.
  • /PASSWORD: Specifies the password of the user account that is specified for the /USER parameter.
  • /SAPWD: Specifies the password that is used to connect to the SQL Server to run the SQL scripts. If the switch is not specified, the hotfix automatically uses Windows Authentication.

back to the top

Command-line examples

  • Use the following command-line syntax for an unattended installation of a hotfix on a default instance of SQL Server with the self-extraction progress dialog box disabled:

    SQL2000-KB840223-v8.00.0931-x86-ENU.exe /quiet

    Because no authentication information is provided in the command line, a default Windows authentication logon is used.

  • Use the following command-line syntax for an unattended installation of a hotfix on a named instance of SQL Server:

    SQL2000-KB840223-v8.00.0931-x86-ENU.exe /quiet /INSTANCENAME=InstanceName /SAPWD=MyPwd

    InstanceName is the name of the instance of SQL Server where the hotfix is applied. The installation may fail if the INSTANCENAME parameter is supplied in the ServerName\InstanceName format.

back to the top

Log file for the hotfix installer

The actions that are performed by the hotfix installation process are recorded in the log file that corresponds to the hotfix installation. The log file, PackageName.log, is saved in the %windir% folder.

Note PackageName is the name of the self-extracting package that corresponds to the hotfix.

The log file has the information about each action taken at each stage of the installation and the specific operation performed on each file.

The hotfix installer creates a single log for all the instances that are updated during a single run of the hotfix. For an instance of SQL Server that is clustered, a log is created for each computer in the cluster that is updated during a single run of the hotfix. The log may have a summary section at the footer that lists all the instances patched, including the success and the failure messages.

back to the top

How to remove a hotfix installation

The hotfix that is being installed on an instance of SQL Server can be removed from the computer. For every hotfix installation, an entry point is created in Control Panel that can be used to remove the hotfix. The Add or Remove Programs window in Control Panel displays the hotfixes that are installed on the computer. To remove a hotfix installation, click Remove or click Change/Remove in the Add or Remove Programs window. The hotfix rollback is initiated when you try to remove the installation. If you have multiple instances of SQL Server installed on your computer, the removal lists only the options of the instances of SQL Server that the hotfix installer can remove.

Because the SQL Server 2000 hotfix build 977 is the baseline, you can roll back any hotfix with a hotfix build that is later than 977. You cannot remove hotfix build 977 if it is shown in the Add or Remove Programs window. If you try to remove hotfix build 977, you will receive an error message, and the hotfix will not be removed correctly. You can remove each hotfix build that is later than 977 in reverse order back to hotfix build 977.

When you roll back a hotfix, the computer is restored to the state that the computer was in before you installed the hotfix. The Spuninst.exe utility rolls back the hotfix. During the rollback, the Spuninst.exe utility does the following:

  • Reinstalls the backed up files.
  • Reverses the registry key operations.
  • Runs the reverse scripts that correspond to the SQL scripts that were used during installation.
  • Runs the reverse processes to reverse the changes that were made during installation.

By default, the files that are required to remove the hotfix are stored in the $SQLUninstallPackageName$ folder.

The user account that you used to log on to the computer must have administrative credentials to remove an instance of the hotfix installation.

If you try to remove an earlier version of the hotfix than the current version that is installed on the instance of SQL Server, the rollback is not initiated.

To roll back the changes that the SQL scripts made, the hotfix installer runs the reverse scripts that correspond to the SQL scripts that were used during installation.

The Spuninst.exe utility can be used at a command prompt to remove a hotfix installation in the unattended mode.

You may use the following command-line parameters with the Spuninst.exe utility when you remove a hotfix installation:

  • /help: Displays the details about the command-line parameters that are available.
  • /quiet: Runs the Spuninst.exe utility in the silent mode. The user cannot remove the hotfix installation interactively.
  • /passive: Runs the Spuninst.exe utility in the unattended mode. The user may see a progress bar that displays the progress of the removal.
  • /norestart: Keeps the Spuninst.exe utility from restarting the computer when the removal is complete.
  • /forcerestart: Restarts the computer when the removal is complete.
  • /f: Forces other programs to close when the computer shuts down.

back to the top

How to roll back and remove a hotfix installation in a cluster

On a clustered instance, the hotfix installer verifies whether the instance is an active node. The hotfix installer then runs the spuninst.exe utility. The hotfix installer rolls back and removes the hotfix on the remaining nodes by using a task scheduler. You cannot initiate a removal of a hotfix from a passive node of the cluster.

back to the top

MORE INFORMATION

For more information about installing a SQL Server 2000 post-Service Pack 3 hotfix, click the following article number to view the article in the Microsoft Knowledge Base:

888007 You receive a "The product does not have a prerequisite update installed" error message when you try to install a SQL Server 2000 post-Service Pack 3 hotfix



Additional query words: uninstall un-install roll back update installer

Keywords: kbhowto kbunattended kbpatch kbpackage kbuninstall kbsetup kbbackup kbinfo KB842960