Backing up an RDBMS with Syncrify
Syncrify now includes a plugin for backing up MS SQL Server and MySQL. Consider using that plugin instead of following instructions in this article.
Relation database management systems (RDBMS) often store lot of data in memory and do not flush that information to disk until it is necessary or when a checkpoint
occurs. Therefore, in order to make a successful backup it is important to ask the database to flush its memory contents before backup.
Although you can copy locked files using the VSS
service in Windows, it does not guarantee you will backup the memory contents from an RDBMS. You may run into problems restoring a database if all you have are the data files in their raw format.
A better way is to use the database's native backup method to create a local backup file. For example, if you have a MS SQL Server database, run the BACKUP DATABASE
command to create a backup to a local file and then use Syncrify to back it up to a remote machine. This ensures that the database flushes its memory contents to disk.
The following example assumes you want to backup a Microsoft SQL Server database.
Use a client such as WinSQL to create an SQL script required to backup your database. For example:
BACKUP DATABASE [Northwind] TO
DISK = N'F:\SQLBackup\Northwind.bak'
WITH INIT , NOUNLOAD , NAME = N'Northwind backup',
NOSKIP , STATS = 10, NOFORMAT
This script backs up the Northwind database in SQL server to a local file located in the F:\SQLBackup folder
- Schedule a task to run this backup prior to running Syncrify. You can schedule a task for backing up your database using WinSQL.
- Schedule a backup in Syncrify after the SQL backup is complete. For example, if the SQL Backup runs at 10:00 PM, schedule Syncrify to run at 10:30 PM