Microsoft SQL Server 2000 hotfixes will be packaged and
delivered to users as a self-extracting executable file. The hotfix installer
helps you install hotfixes by using a GUI-based Setup program. By using the
hotfix installer, you can also automate the hotfix installation process across
your whole organization.
The name of the hotfix installer executable
file will have this format:X.YY
- X indicates the major version number.
- YY indicates the two-digit minor version number.
- ZZZZ indicates the hotfix number.
- LangName is the three letter abbreviation for the language to which the
hotfix is localized.
For example, the U.S. English version of SQL Server 2000 hotfix
number 701 would be:
If you experience
disk space errors when you extract the package, see the following article in
the Microsoft Knowledge Base:
BUG: Error message "There is not enough space on drive" occurs when you extract SQL Server 2000 dowloads
Before you install the hotfix installer
Before you install the hotfix installer, Microsoft recommends that
you perform a backup of these databases:
Later, if you decide to rollback the hotfix, you have to restore
these backups. More information about the rollback process is included in the
"How to remove or rollback the hotfix" section of this article. The installation of the
hotfix installer does not make modifications to the user databases; however, it
might include modifications to the system databases.
How to use the hotfix installer
To start the hotfix installation process, you must run the hotfix
executable file. For a standard hotfix installation, you must save and run the
hotfix executable file on the server computer. For instructions about how to
install hotfixes on a cluster installation, read the "Cluster installation"
section of this article. To run the installation, you must log on to the
operating system with a user account that has local administrative
When you run the installation, the package files are
extracted to the temp
folder. Then, a GUI-based hotfix installer tool starts that
guides you through the rest of the installation process.
What files are updated by this hotfix?
A list of files that are updated by this hotfix is located in an
INF file. You must run the hotfix executable file and extract the INF file to
review the file list.
To obtain a list of the files that the hotfix
updates, follow these steps:
1. Start the hotfix executable file. Run
the program until you are the extraction page. The files are then extracted to
% folder. Do not cancel the setup yet. If you cancel the setup,
all the extracted files are removed from the %TEMP
2. After you see the Welcome
screen for the hotfix installer, locate the %TEMP
% folder. Use the timestamp on the folders that are in the TEMP
folder to identify a folder named pftXX
~tmp, where XX
is a random number
3. Locate the Hotfix.inf file in
this folder to obtain a complete file list from the [FILES] section of this INF
file. Additionally, you can also review the [SCRIPTS] section of the Hotfix.inf
file to find out if the update runs any scripts against your SQL Server
4. Now, you can cancel the setup to remove the
You can also obtain the list of the files that the hotfix
updates by reviewing the Microsoft Knowledge Base article that was authored for
this hotfix. The article number is shown in the initial Welcome
screen of the hotfix installer.
How the installer works
The hotfix installer uses these steps to complete the
- When you run the self-extracting exe, the files are
extracted to a temp folder on the computer.
- The hotfix installer then verifies that the user who is
currently logged on has administrative credentials before it initiates the
Setup log file.
- The installer automatically detects all instances of a SQL
Server installation, and enumerates the list of the instances that qualify for
the update. To qualify for the hotfix update, the SQL Server installation must
satisfy certain requirements. The Microsoft Knowledge Base article that
references this hotfix will have more information about the requirements for
applying this update. For example, if the hotfix requires the installation of
Microsoft SQL Server 2000 Service Pack 2, then you must install SQL Server 2000
Service Pack 2 before you apply this hotfix. If the computer does not have any
SQL Server installations that qualify for this hotfix installation, you receive
a message similar to the following and the installation is aborted:
You do not have any instance of SQL installed on this computer
that qualifies for this HotFix. Please check version and service pack
requirements for this Hotfix.
- After you select a particular instance of SQL Server for
the hotfix upgrade, the hotfix installer resolves and reads to memory the
appropriate folder names and locations that correspond to the SQL Server
installation that you selected.
- The Setup prompts you for information, such as whether you
want to use SQL Server Authentication or Windows Authentication. If you select
SQL Server Authentication, you must supply the Setup program with the password
for the sa logon. If you select Windows Authentication, you must be running
the Setup program while you are logged on to Windows with a Windows logon
account. This logon account must be a part of the sysadmin fixed server role for the instance of SQL Server you are
upgrading. If you want to use SQL Server Authentication, you must make sure
that the instance of SQL Server is configured for Mixed Mode security.
Otherwise, the authentication step is not successful and you receive the
following error message, even if you supply a valid sa password:
Invalid login information. Please
- After you log in SQL Server by using the logon information
from step 5, the Setup program stops both the MSSQLSERVER service and the SQL
Server Agent services for the instance that is being upgraded.
- Now, the hotfix installer performs the core step of
replacing the existing files with the new files that were included with the
hotfix. To do this, the program searches the destination computer to verify if
the files are really present. If the files exist on the destination computer,
it qualifies for a replacement. After a file passes this check, the file
version is compared against the source file. For files without a version
number, the program uses the time and date information. This creates a list of
files that are to be installed.
- For each file that is selected for replacement, the file is
first backed up to a backup folder. This backup folder will exist in the same
folder as the file. Under the backup folder there is a sub-folder that has the
same name as the hotfix build number.
For example, if you are installing
SQL Server 2000 hotfix 701, and Sqlservr.exe must be replaced from its current
location (C:\Program Files\Microsoft SQL Server\MSSQL\Binn\), the installer
creates a new folder structure similar to C:\Program Files\Microsoft SQL
Server\MSSQL\Binn\Backup\0701, and it backs up the existing file to this new
location before it replaces it with the new file from the hotfix.
Likewise, if you select a file that is in C:\Program Files\Microsoft SQL
Server\MSSQL\Binn\Resources\1033 for replacement, it is first copied to a
backup location similar to C:\Program Files\Microsoft SQL
Server\MSSQL\Binn\resources\1033\Backup\0701, and it is then replaced with its
counterpart from the hotfix.
Note If you use the hotfix installer on an instance of SQL Server,
and you remove such an instance, the backup folders described earlier are not
deleted by the SQL Server remove program. You must then manually delete these
backup folders created by the installer. If these folders are not removed, your
future attempts to re-install Microsoft SQL Server 2000 on this computer by
using the same instance name will fail.
- After the installer stops all the services, a file will not
be held locked and is ready for replacement through a simple copy operation. If
the file is locked, the installer aborts, and you receive the following
One or more of the files selected for patching is
locked by other processes. The log file has detailed information about the
Please close all applications and restart the Hotfix
Installer. If the problem persists, you may have to restart your computer and
then restart the Hotfix Installer.
If there are scripts that must be run, the installer starts
all services and runs the scripts.
SQL Server 2000 cluster installations
To apply the hotfix package to a clustered SQL 2000
installation, you must run the hotfix package on the node that owns the SQL
Server resource. Then, the hotfix installer will take the SQL Server resource
offline and update the binaries on all nodes of the cluster. Finally, the SQL
Server Resource is brought online, and the installer runs any install scripts
(.sql) that were shipped as part of the hotfix.
SQL Server 7.0 cluster installations
For clustered SQL Server 7.0 installations, you must
first uncluster SQL Server by running the SQL Server Failover Wizard from the
primary cluster node of each virtual SQL Server.
Follow these steps for an Active/Active installation:
- Make sure that the computer node where SQL Server 7.0 was
originally installed, controls both the SQL Server resource groups.
- On each node of the cluster, run the Failover Setup Wizard
utility to remove that Virtual SQL Server.
- After unclustering SQL Server, you must run the hotfix
executable file on both the nodes, and complete the hotfix installation
successfully before you recluster SQL Server.
Follow these steps for an Active/Passive installation:
- Make sure that the computer node, where SQL Server 7.0 was
originally installed, controls the SQL Server resources.
- On this same computer node, run the Failover Setup Wizard
utility to remove that Virtual SQL Server.
- After unclustering SQL Server, you must run the hotfix EXE
on the primary node only, and complete the hotfix installation successfully
before you recluster SQL Server.
Command line parameters
Here is a list of the command line parameters that are available
with this hotfix package.
/s Disable Self Extraction progress dialog. Must come before /a.
/a This parameter must come before all parameters except /s if you
are running the hotfix by using the self-extracting EXE, and you
want to include parameters for unattended installations. This is a
mandatory parameter for the installer to run in the unattended mode.
/q This flag causes the Setup program to run in silent mode
with no user interface.
/allinstances This is an SQL specific key that patches all instances of SQL Server
in silent mode that pass the applicability rules. This flag can also be used
to patch all SQL Server virtual servers that pass the applicability rules and needs
to be run from the active node.
INSTANCENAME Name of the instance of SQL Server. You must enter it as
BLANKSAPWD Means blank sa password for SQL Authentication. If you enter
this parameter on computers that are running Microsoft Windows NT or
Microsoft Windows 2000, the default Windows Authentication logon is
overridden and it tries to log on with a blank sa password.
The correct format for this parameter is BLANKSAPWD=1.
This parameter is recognized only for unattended
SAPWD Non-blank sa password. If you enter this parameter, it must be
in the form of SAPWD=yoursapassword. This parameter
overrides default Windows Authentication on computers that are running
Windows NT or Windows 2000, or a BLANKSAPWD, if entered.
You can use the start /wait
standard Windows command line prefix in front of the command to
return control to the command prompt after the hotfix installer completes.
Command line examples
- The 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 is:
Because no authentication information is provided in the command line,
a default Windows Authentication logon is used.
8.00.0701_enu.exe /s /a /q
- The command line syntax for an unattended installation of a
hotfix on a named instance of SQL Server is:
where FRIDAY is the name of SQL Server 2000 instance. The installation
will fail if the INSTANCENAME parameter is supplied as servername\instancename.
8.00.0701_enu.exe /a /q INSTANCENAME=FRIDAY SAPWD=MyPwd
- The command line syntax for an unattended installation of a
hotfix by using the start /wait option is:
start /wait 8.00.0701_enu.exe /s /a /q INSTANCENAME=sqlinstance02
How to perform an unattended installation
An unattended installation is similar to the
interactive installation described earlier. For a silent installation, you must
execute the self-extracting EXE with the /q parameter. If you are applying the
hotfix to a named instance, you must specify the instance name on the command
line by using the INSTANCENAME parameter. If the selected instance qualifies
for the hotfix, the installer will apply the patch, as described earlier. If
the INSTANCENAME parameter is not supplied, the hotfix uses the default
instance for SQL Server.
For unattended installations on a cluster,
you can use the same syntax like in a noncluster scenario. For example, if you
have a named instance in a cluster named HELLO\Inst1, where HELLO is the
Virtual Server name, the syntax is similar to:
start /wait 8.00.0701_enu.exe /q instancename=inst1
Every action that is performed by the hotfix
installation process is recorded in the setup log file. The log file will have
enough information about each action taken at each stage of the installation,
and the specific operation performed on each file. The hotfix saves the log
file in the %WINDIR%\SQLHotfix folder. For each log file, the program creates a
The question mark (?) is how
many times you tried to install the hotfix on the computer.
successful installation, at the end of the log file you will see this
message: Similarly this
message means a failure has occurred during the hotfix
installation: This message indicates that the installation was
canceled in the middle of the setup process, and the installation was
aborted: For failed installations, a corresponding error
code is written to the hotfix installer log.
How to remove or rollback the hotfix
If you decide to rollback a hotfix package, you must
use a manual process to remove the updated files. A complete list of the files
and the appropriate backup directories that were created by the hotfix is
listed in the setup log file. As mentioned earlier, the installer backs up the
current files to the backup folder structure (documented earlier in this
article) before replacing them with the new files. To rollback the hotfix, you
must stop all services and replace all the files from the backup folder
specified in the log file. If the hotfix did run any scripts during
installation, there is no quick automatic way to roll back the changes it made
to the system databases. That is why it is important for you to back up the
system databases before you apply the hotfix.
If you must rollback
from this hotfix, and your setup log file (or the INF file) indicates that the
hotfix did run one, or more, .sql scripts against your server, you must follow
The following steps involve rebuilding your master
database and restoring it from a master backup that was taken
before you applied the hotfix. If you created any new user databases after you
applied the hotfix, you must backup these user databases now so that you can
restore these databases, after completing the following steps:
- Detach all user databases. For more information, see the
"Attaching and Detaching Databases" topic in SQL Server 7.0 Books Online, or
the "How to attach and detach a database (Enterprise Manager)" topic in SQL
Server 2000 Books Online.
Note If any of the databases are involved in replication, you must
first disable publishing and distribution. For more information, see the
"Disabling Publishing and Distribution" topic in SQL Server Books
- Stop all SQL Server services (that is, MSSQLServer,
SQLServerAgent, Microsoft Distributed Transaction Coordinator [MS-DTC],
- As a safety factor, copy the Data folder to a safe location. If you have data and log files in a
separate folder, other than the default Data folder, also copy those files.
- Search the computer for the backup folder, and replace the
new versions of all files with the old versions.
- Rebuild the master database.
- Restore the master, model and msdb databases from your backup of these databases that was taken
before you applied the hotfix. This automatically attaches any user databases
that were attached when you created the backup. Attach any user databases that
were created after the last backup of the master database.
- If you had full-text catalogs, restore the full-text
catalogs and resynchronize the full-text catalogs. For more information, see
the following article in the Microsoft Knowledge Base article:
How to move, copy, and back up full-text catalog folders and files
- If you use replication you must reconfigure replication
- If you use SQL Mail, reconfigure SQL Mail. For more
information, see the following article in the Microsoft Knowledge Base:
How to configure SQL Mail