When Macrium Reflect takes an image, it invokes Volume Shadow Copy Service (VSS). This is a Microsoft component that takes a point-in-time snapshot of your file system. This snapshot remains active until the imaging completes. For the majority of data this creates a backup that results in a consistent system upon restore.
However, database engines cache transactions for performance purposes. It is important, therefore, to force the engine to ensure that everything is on the disk and coherent before the snapshot is taken.
MS SQL Server includes a VSS writer and automatically creates a coherent point-in-time snapshot. However, for databases that don't ship with a VSS writer, you need to take an extra steps when configuring the backup:
Note: The example below uses batch files. However, visual Basic (vbs) and executable (exe) files can also be invoked using the same naming convention.
- Use Notepad to create the following batch file (replace <XML File Name> with the name of your XML definition file):
<XML File Name>_before_snapshot_wait.bat
- Save the file in the same folder as the backup XML file and make sure it contains the command(s) to stop the db service.
Create the following batch file:
<XML File Name> _after_snapshot _wait.bat
- Save the file in the same folder as the backup XML file and make sure it contains the commands to start the database service.
This ensures that the database service is stopped for the duration of the snapshot creation phase, usually less than a minute.