
Last Backup Set and Hard Recovery (Eseutil /cc)
When you restore an Exchange 2000 Server database, you have the option to indicate that the restore procedure that you are performing is the last restore procedure you will perform before you mount the database. This option is enabled by selecting the Last Backup Set check box after you click the Start Restore button on the Restore tab in Microsoft Windows® 2000 Backup.
When you restore an online backup of an Exchange 2000 Server database, the database is in an inconsistent state. The process of bringing the database to a consistent state after a restore procedure is called hard recovery. During hard recovery, the Extensible Storage Engine (ESE) uses information in the log files and patch files, for Exchange 2000 Server versions earlier than SP2, to redo operations performed on the database, and then to undo any operations that belong to incomplete transactions.
In Exchange Server 5.5 or earlier, this happens automatically the next time the service starts. When the service starts, the presence of a Restore in Progress registry key indicates that recovery must be run on the database using the information in the Restore in Progress key.
In Exchange 2000 Server, hard recovery is no longer controlled by the Restore in Progress key. It is controlled by a file called Restore.env that is created in the folder that you specify during the restore process in the Temporary location for log and patch files box. This folder will also contain the log files and, in case of Exchange 2000 Server versions earlier than SP2, patch (.pat) files necessary to complete recovery on the database.
The Last Backup Set check box in Windows 2000 Backup determines if hard recovery should be run after the backup completes. If you select this check box, hard recovery is run automatically after the restore procedure finishes, and then the temporary files are removed. At this point, you can mount the database. If you do not select this check box, hard recovery is not run. After the database files and temporary files are copied to disk, the restore procedure finishes. If you attempt to mount the database at this point, you will not be able to.
The purpose of the Last Backup Set option is to allow you to restore a full backup, and then restore one or more incremental backups or a differential backup. You only select this check box during the last restore procedure, because you do not want hard recovery to run until all the log files to be recovered are in place.
For example, if you are restoring an Exchange 2000 Server database from a full backup and two incremental backups, clear the Last Backup Set check box when you restore the full and the first incremental backups. Select the Last Backup Set check box only for the last incremental backup.
In certain circumstances, you may not want to run hard recovery immediately after the restore procedure. Also, you may forget to select the Last Backup Set check box during the last restore procedure. For these reasons, you can manually run hard recovery using Exchange Server Database Utilities (Eseutil).
Use the following command to manually run hard recovery.
eseutil /cc <path to directory containing the Restore.env file>
For example, if the path specified in the Temporary location for log and patch files box during the restore procedure is C:\TempRest, the command to run hard recovery is the following.
eseutil /cc c:\temprest
If you run the eseutil /cc command, the command may not work with Exchange 2000 Server running on a cluster server.
This problem can occur if Eseutil is using the local computer name instead of the cluster name.
To work around this problem, set the following environment variable:
SET _CLUSTER_NETWORK_NAME_=<cluster_name>
For example, in a two-node cluster that is composed of SERVER1 and SERVER2, with the cluster visible to network clients as CLUSTER1, type the following command.
SET
_CLUSTER_NETWORK_NAME_
=CLUSTER1