Plugin Configuration
EnterpriseBacula Enterprise Only
This solution is only available for Bacula Enterprise. For subscription inquiries, please reach out to sales@baculasystems.com.
Note
In case of a clustered MSSQL environment, or AlwaysOn Availability Groups, the Bacula Enterprise MSSQL VDI plugin will not automatically detect the configuration. Precautions need to be taken on both the MSSQL Server and Bacula Plugin side to make sure databases are adequately protected in such an environment.
Please contact Bacula Systems (support@baculasystems.com) for help on configuring the MSSQL VDI plugin if in doubt.
To activate the MSSQL plugin you have to put the following into the Include section of the File Set which will be used to back up the SQL Server data:
Plugin = "mssql"
This will back up all SQL server databases (tempdb is excluded by
default).
The plugin directive must be specified exactly as shown above.
If everything is set up correctly as above then the backup will include the SQL server data. The SQL server data files backed up will appear in a bconsole or bat restore as follows:
/@mssql/MSSQLSERVER/master/data.bak
/@mssql/MSSQLSERVER/production/data.bak
...
etc
It is possible to select different instances or databases to be backed up with the following parameters:
instancedatabaseincludeexclude
Full, Differential and Logs (Incremental) backups are supported.
Following the creation of a new database, you should run a Full backup of the SQL server data. A new database will not be backed up at a different level, and a Differential backup will automatically be upgraded to a Full backup on this specific new database.
The MSSQL Plugin does not use VSS snapshots to perform the backup so, unless some disk folder is present in the fileset, Enable VSS can be set to “no”.
A complete example of the Job setup for MSSQL Server data is shown below:
Fileset {
Name = MSSQL
Enable VSS = no # VSS is not required
Include {
Options {
Signature = SHA1
}
Plugin = "mssql: database=production"
}
}
Job {
Name = MSSQL08
File Set = MSSQL
Client = wsb-sql08-fd
Job Defs = DefaultJob
Level = Differential
}
Fileset {
Name = MSSQL09
Enable VSS = no # VSS is not required
Include {
Options {
Signature = SHA1
}
Plugin = "mssql: abort_on_error exclude=test1 exclude=test2 copyonly"
}
}
Job {
Name = MSSQL09
File Set = MSSQL09
Client = wsb-sql08-fd
Job Defs = DefaultJob
Level = Full
}
Fileset {
Name = MSSQL10
Enable VSS = no # VSS is not required
Include {
Options {
Signature = SHA1
}
Plugin = "mssql: include=test2 include=prod1 include=r7*"
}
}
Job {
Name = MSSQL10
File Set = MSSQL10
Client = wsb-sql08-fd
Job Defs = DefaultJob
Level = Full
}
Fileset {
Name = SQLExpress
Enable VSS = no # VSS is not required
Include {
Options {
Signature = SHA1
}
Plugin = "mssql: instance=SQLExpress hostname=."
}
}
Job {
Name = SQLExpress
File Set = SQLExpress
Client = wsb-sql08-fd
Job Defs = DefaultJob
Level = Differential
}
MS SQL Server Multi Instances Backup Job
Fileset { Name = SQLAllInstances Enable VSS = no # VSS is not required Include { Options { Signature = SHA1 } Plugin = "mssql: all_instances" } } Job { Name = SQLAllInstances File Set = SQLAllInstances Client = wsb-sql08-fd Job Defs = DefaultJob Level = Incremental }
MS SQL Server 2 Instances Backup Job
Fileset { Name = SQL2Instances Enable VSS = no # VSS is not required Include { Options { Signature = SHA1 } Plugin = "mssql: instance=MSSQLSERVER instance=PRODUCTION" } } Job { Name = SQL2Instances File Set = SQL2Instances Client = wsb-sql08-fd Job Defs = DefaultJob Level = Incremental }
Go back to: MSSQL VDI: Configuration.