Windows 2003 and later operating systems use the Volume Shadow Copy Service (VSS) for creating snapshots of application databases that provide an appropriate database writer. The steps involved in performing snapshot backups in Backup Exec using VSS are as follows:
1 The Backup Exec requestor asks VSS to enumerate the database writers, gather the writer metadata, and prepare for shadow copy/snapshot creation.
2 The database writer provides the required metadata. VSS then notifies the writer to prepare the database for the snapshot operation.
3 The database writer prepares the database by completing open transactions if required, rolling transaction logs, and flushing caches. After this, the writer notifies VSS.
4 Next, VSS initiates the commit snapshot phase.
5 VSS tells the writers to quiesce their data and also temporarily freezes Backup Exec I/O requests for several seconds required to create the snapshot of the database. The I/O freeze is not allowed to take longer than 60 seconds.
VSS flushes the file system buffer and then freezes the file system.
6 VSS then tells the provider to create the snapshot, which is nothing but an empty file with a layout of the volume and is in association with a differencing file (which may take a maximum of ten seconds).
7 VSS unfreezes the file system. After the snapshot is created, VSS releases the writers from their temporary inactive phase, and all queued write I/Os are completed.
8 While the queued I/Os are written to the database, prior to the write operation, a copy of the original data is stored to the differencing file, which is a cache file associated with the snapshot. The original data in the database is then overwritten, and marked as updated, by means of an archive bit or some other mechanism.
9 VSS queries the writers to confirm that write I/Os were successfully held during snapshot creation.
10 If the writes were not successfully held (meaning that the snapshot data is potentially inconsistent), the snapshot is deleted and Backup Exec is notified. Backup Exec can retry the process (go back to step 1) or notify the administrator to retry at a later time.
11 If the copy is successful, VSS gives the location information for the snapshot back to Backup Exec.
12 Backup Exec refers to the snapshot, which is a layout of the volume, and starts backing up the data that has not changed from the actual database.
13 When the backup job reaches a point in the database where the data has changed after the snapshot was created, it refers back to the snapshot and backs up that data from the cache file.
14 After the backup job is complete, the backup job runs database consistency checks to ensure the integrity of the backed up data è Verify