Link

Microsoft SQL Server

Veeam Backup and Replication provides two options for backing up SQL Server:

  • Image-level backup of the virtual machines running SQL Server
  • Backup of Windows machine running SQL Server using Veeam Agent

Two options differ in capabilities and the list of supported configurations.

  VM backup Agent backup
Standalone SQL server Supported Supported
Always On Availability Group Supported Supported
SQL Failover Cluster Not supported Supported

Note: Please read the whitepaper on benefits of using SQL Always-on Availability Groups for Virtual Environment

Veeam Agent has additional limitations applied to specific configurations:

  • Backup of CSV (Cluster Shared Volumes) is not supported. Cluster disks used as CSV are automatically excluded from backup.
  • AlwaysOn Availability Groups based on multiple Failover Cluster Instances are not supported.
  • AlwaysOn Clusterless Availability Groups are not supported.

Preparation

The following section will provide the best practices to verify SQL Server for the smooth and fast backup.

Check the status of VSS writers and providers:

  1. Open a command prompt as Administrator.
  2. Type “vssadmin list providers” and press enter.
  3. Verify all the writers are in health state.
  4. Type “vssadmin list writers” and press enter
  5. Check and confirm writers are “Stable with no errors”.

As backup is I/O intensive operations check the SQL server performance status before start taking the backup. To verify the SQL Server Health:

  1. Open Performance Monitor.
  2. Add below objects verify the performance:
  3. Under the Memory object, add the counter: Available MB
  4. Under the Processor object, add the counter: %Processor Time (Instance: Total)
  5. Under the Physical Disk object, add the counters: Avg. Disk Sec/Read and Avg. Disk Sec/Write (All Instances)
  6. Under the Paging File object, add the counter: %Usage (Instance: Total)

Check Microsoft article “Monitor Memory Usage” to validate the health status of SQL Server.

Job Configuration

Virtual Machine Image Level Backup

Standalone SQL Server

No additional configuration is required to backup the standalone SQL server, you can configure the backup with application aware processing to take the backup of SQL server with the databases.

Please check the Veeam User’s Guide sections to get the more information about SQL backup configuration

SQL Always-on Availability Group

When backing up AlwaysOn availability group make sure all cluster nodes are processed by the same backup job for transaction logs processing and restores to work properly. Consider increasing cluster timeouts in case failover occurs during the backup, similar to Exchange DAG as per KB1744.

You can also follow the steps outlined in KB2110 to exclude certain databases from application aware processing.

Transactions Logs Backup:

Please be aware that transactions logs are processed periodically and stored in temporary folder inside of the VM before shipping to repository/shipping server. Default location of the temporary folder is %allusersprofile%\Veeam\Backup. The default location is in most cases the system partition to avoid the situation to run out of space in the system partition, it’s the best practices to change the temporary folder location to the windows disk volume where enough space is available for staging the transactions logs.

Temporary folder path can be changed using SqlTempLogPath (STRING) registry value:

  • Path: HKEY_LOCAL_MACHINE\SOFTWARE\Veeam\Veeam Backup and Replication
  • Key: SqlTempLogPath
  • Type: REG_SZ
  • Default value: undefined

For instructions on changing temporary folder path for agent-based backups refer to

As best practices it’s highly recommended to periodically shrink the SQL log file.


References

Change Temporary Folder Path

Shrink SQL Log File