Exchange Server 2003 - Volume Shadow Copy Service
Frequently Asked Questions
The following are common questions that developers often ask about using the Volume Shadow Copy Service with Microsoft Exchange Server 2003 and their associated answers.
Can the Exchange writer be used with Exchange Server 2003 running on Windows 2000 Server?
No. The VSS is only available with Microsoft Windows Server™ 2003 . Although Exchange Server 2003 can be run on Microsoft Windows® 2000, using the VSS to manage backup and restore operations for Exchange Server 2003 storage groups can only be done when Exchange Server 2003 is run on top of Windows Server 2003.
Can I perform a full shadow copy, do incremental streaming backups, and then be able to restore the database/storage groups by first restoring the shadow copy and then replaying the streaming incremental backups?
No. The Exchange store will prevent you from mixing backup types. When you perform a full shadow copy, the Exchange store marks the database headers to indicate the last full backup was performed using the VSS. If an incremental backup using a streaming method is attempted, the streaming backup fails and an error is returned indicating the streaming backup did not finish.
Can I select an individual database to back up?
No. Although the Microsoft® Exchange Server 2003 writer for the Windows Server 2003 Volume Shadow Copy Service presents the list of underlying components for a storage group, only the whole storage group can be selected for backup. The underlying database and log components are provided for backup applications only to inform the user what components are included in the backup.
Can I select an individual database to restore?
Yes. Although only entire storage groups can be backed up, you can select individual databases to be restored.
Can I restore a shadow copy to a different location on the same server?
No. Shadow copy backups must be restored to the same drive and directory from which the original backup was made.
Can I restore a shadow copy to the Recovery storage group?
No.
Can I restore a shadow copy to an alternative forest?
Yes. The drive and directory to which you want to put the restored data must be identical to drive and directory from which the backup was taken.
Does the Exchange writer start or stop the storage group?
No. Before one or more databases can be restored, the requesting backup/restore application must dismount the databases programmatically using the CDO for Exchange Management (CDOEXM) API. After the restored data is in place, the backup/restore application must then remount the store.
What types of backup does the Exchange writer support?
The Exchange writer supports full and copy backups with Exchange Server 2003. Additionally, if Exchange Server 2003 Service Pack 1 (SP1) is applied, incremental and differential backup types are also available.
Can Exchange Server 2003 databases be restored without using the Volume Shadow Copy Service and the Exchange writer?
No. During any restore operation managed by the VSS, the Exchange writer performs steps during both PreRestore and PostRestore events. The Exchange writer sets VSS_WRITERRESTORE_ENUM to VSS_WRE_ALWAYS to inform the requesting backup/restore application that the VSS must always be used to backup or restore Exchange Server 2003 data. Restoring data from a backup created using the VSS without also using the VSS is not supported, and will consequently fail.
What does the Exchange writer do to the current log file during a shadow copy backup?
How the Exchange writer handles the current log file depends on whether circular logging is enabled/disabled and the backup type currently selected.
- When circular logging is disabled, the VSS allows for full, copy, incremental, and differential backups. For each backup type, when the requesting backup/restore application issues the Freeze command, the Exchange store closes the current E0n.log file and renames it to E0nXXXXX.log. The Exchange store then creates another file named E0ntmp.log, and then suspends all write activities to the logs files during the backup. After the backup operation is completed, the requesting backup/restore application issues the Thaw command, Exchange store renames the e0ntmp.log file to E0n.log, and then resumes writing log entries to it.
- When circular logging is enabled, incremental and differential backups are not permitted. When freezing a storage group for a full or copy backup with circular logging enabled, the Exchange store stops writing into the current log file and deletes the E0ntmp.log file. After the backup operation is completed, the requesting backup/restore application issues the Thaw command, and Exchange store continues writing to the log file.
Is it possible to restore an individual database in a storage group that has multiple databases?
Yes. Individual databases within a multiple database storage group can be restored. To restore individual databases, the whole storage group must be dismounted and circular logging must be disabled for that storage group. You cannot restore individual databases if circular logging is enabled during either the backup or restore operation.
What does it mean when I receive a VSS_E_WRITERERROR_RETRYABLE error during a BackupPrepare event?
This error typically indicates that the storage group is dismounted. To back up a storage group, the storage group must be mounted when the backup operation begins. To verify this is the problem, examine the Windows application event log for an error numbered 9607 with the Source set to MSExchangeIS and the Category set to Exchange writer. The event data indicates which component in the storage group was not mounted at the time the backup operation was attempted.
What does it mean when I receive a VSS_E_WRITERERROR_RETRYABLE error during a PreRestore event?
This error typically indicates the storage group is dismounted. When restoring a database, the entire storage group must be dismounted. To verify this is the problem, examine the Windows application event log for an error numbered 9633 with the source set to MSExchangeIS and the Category set to Exchange writer. The event data indicates which component in the storage group was dismounted at the time the restore operation was attempted.
Does Exchange Server 2003 suspend (freeze) operations during a shadow copy?
Yes. Exchange Server 2003 will suspend operations to any storage group involved with a backup operation managed by the VSS. This suspension occurs primarily when the Exchange Server 2003 storage group is being backed up or restored by using the VSS. Remember that the storage group will also be frozen when the VSS is used to back up or restore the disk storage subsystem that contains an Exchange Server 2003 storage group. When an Exchange Server 2003 storage group is frozen because of a dependent system-state backup, it is treated as a copy backup (that is the transaction log and checkpoint files are not modified).
How much disk space is required for a database shadow copy? Is it 1:1 or is the image compressed?
The disk space cost for a shadow copy depends on how the shadow copy mechanism is implemented, including both the storage hardware and software. Some shadow copy implementations might consume the same space as the original, and others may provide efficient compression to save space. The amount of disk space required really depends on how the backup/restore application is designed and will vary among applications.
Does performing a shadow copy backup commit Exchange Server 2003 transaction logs?
No. Data is not flushed to the log files during a backup. The currently-open log files are closed and written to disk, but no additional transactions are written to the database or logs.
What occurs if a system-state snapshot is taken while a streaming-style backup is occurring?
If a streaming-style backup operation is in progress, and the VSS attempts to create a shadow copy, the streaming backup will fail and the shadow copy will also (likely) fail. Remember that a shadow copy of an Exchange Server 2003 storage group is triggered when the VSS is used to back up the system state of a disk that contains an Exchange Server 2003 storage group.
What occurs if I select only the lower-level components of a storage group for backup using the Exchange writer?
If you try to select the lower-level components inside a storage group for backup using the Exchange writer, your ADDComponent calls may succeed; however, you will later receive a MAPI_E_NOT_FOUND error during the OnPrepareBackup event.
All the Name properties for the backup components have GUIDs. How do I display a human-readable list of component names in my backup/restore application?
To display a list of databases and storage groups in a more user-friendly format, use the Caption property and not the Name property.
Can the integrity check be skipped for fast recovery snaps?
For full backups, where transaction log files are truncated, database integrity must be verified prior to calling BackupComplete. For copy backups that are taken between full backups where transaction log files are not truncated, integrity checks may be skipped. By skipping the integrity check, the VSS Provider postpones identifying any possible database corruption until the next full backup. If a database is recovered from a corrupted backup, you will need to go through the process of a full database recovery starting from the most recent full backup to bring the database back to a healthy state.
Does Exchange Server 2003 need to be installed on the backup server to run database consistency checks?
No. Exchange Server 2003 does not need to be installed on the backup server; however, Microsoft Exchange System Management Tools is required on the backup server to run the consistency checks.
How do I modify the level of event logging/tracing for the Exchange writer?
Event logging is the only extra tracing that can be turned on.
To modify the level of event logging for the Exchange writer
- Open Microsoft Exchange System Manager.
- Expand the Servers node.
- Right-click the server on which you want to increase logging, and then click Properties.
- Click the Diagnostics Logging tab.
- Expand the MSExchangeIS node in the Services pane and click System.
- Click Exchange writer in the Categories pane, and then select the desired logging level.
- Click Apply, and then click OK to close the dialog box.
What limitations are there to performing successive snapshots?
Before a new snapshot can be initiated, the interface needs to be torn down by calling BackupShutdown. You can confirm that BackupShutdown has been successfully called by increasing logging on the Exchange writer and examining the application event log for event 9648 (Exchange VSS Shapshot backup has been shutdown successfully).
If BackupShutdown is not called, or was not successful, you will most likely see the following error in your application event log.
Event Type | Error |
Event Source | MSExchangeIS |
Event Category | Exchange VSS Writer |
Description | Error code -2147467259 when preparing for backup. |
What is the VSS_BACKUP_TYPE enumeration?
Together with the selection of log and/or database components included in the shadow copy set, the backup application must also specify the type of backup to be performed. This is accomplished by choosing the appropriate value of the VSS_BACKUP_TYPE enumeration. This value is passed to the Exchange writer using the IVssBackupComponent::SetBackupState method during the initialization phase of the backup process.
The permissible values are:
Backup type | Permissible value |
---|---|
Full | VSS_BT_FULL |
Copy | VSS_BT_COPY |
Incremental | VSS_BT_INCREMENTAL (Requires Exchange Server 2003 SP1 or later.) |
Differential | VSS_BT_DIFFERENTIAL (Requires Exchange Server 2003 SP1 or later.) |
When passed to the IVssBackupComponent::SetBackupState method, these values set a flag in the Exchange writer that determines whether the Exchange Server 2003 storage group transaction log files will be truncated. Log files are always truncated when VSS_BT_FULL or VSS_BT_INCREMENTAL are specified. Log files are never truncated when VSS_BT_COPY or VSS_BT_DIFFERENTIAL are specified.
What do I do in a clustered environment in my Microsoft Clustering Services Resource Monitor fails over the Exchange group during a restore?
When performaing a restore on a Microsoft Server Cluster, the Resource Monitor fails over the group containing your Exchange Server resource. The problem may be that one of the health checks issued by the Resource Manager did not receive a response from the physical disks on the Exchange server. You can sometimes work around this problem by increasing the IsAlive and LooksAlive health monitoring values to a value greater than the amount of time the restore will require. These values take effect as soon as they are modified. If your application modifies these values, it should restore them to their original values after the VSS restore has completed. Additionally, your application should determine the appropriate value for these settings so that the restore can successfully complete before the Server Cluster Resource Monitor attempts to poll the physical disks on the Exchange server.
The following examples of commands demonstrate the use of cluster.exe to set the IsAlive and LooksAlive values to 5 minutes (300,000 milliseconds).
cluster res "%ResourceName%" /prop IsAlivePollInterval=300000
cluster res "%ResourceName%" /prop LooksAlivePollInterval=300000
Replace %ResourceName% with the resource name as shown in the Cluster Administrator; for example, "Disk K:". For more information about the cluster resource command, see cluster resource command on TechNet.
In Windows Server 2003 SP1 and later, a new feature was added where cluster physical disk resources can be placed into "maintenance" mode. Placing the physical disk resource into maintenance mode is recommended instead of modifying the IsAlive and LooksAlive polling interval settings. When a resource is in maintenance mode, the Resource Monitor suspends the IsAlive and LooksAlive polling for that resource. You can set the maintenance mode using the ClusterResourceControl API functions. Additionally, you can use the cluster.exe tool that ships with Windows Server 2003 SP1 to place physical disk resources into maintanence mode and place them back online. In the following examples, the first example places a physical disk resource into maintenance mode. The second example places the disk back online.
cluster ExampleCluster res "Disk h" /maint:on
cluster ExampleCluster res "Disk h" /maint:off
It is important to note that only physical disk resources can be placed into maintenance mode.
Can I take the Exchange cluster resources offline during a restore?
You should never take Exchange cluster resources offline when a VSS snapshot restore is being performed. When the last Exchange Virtual Server on a cluster node is taken offline, the Exchange store service stops. When the Exchange store service stops, the Exchange writer will no longer be available for snapshot restore operations. Because stopping the Exchange store service is not instantaneous, there might be cases when an application might be able to access the service after the Information Store is actually offline. However, the Exchange store process will very likely not be available for the entire restore process. For these reasons, snapshot restore applications that use the Exchange writer must not take the "Information Resource" offline until after the snapshot restore has completed.
Comments
- Anonymous
February 18, 2008
Frequently Asked Questions The following are common questions that developers often ask about using the