Backup SAP MaxDB with Veeam
You use SAP MaxDB? Do you need to backup your database with Veeam? Find out how.
by Frank Wagner on 2/1/2022
As there is no built-in support for backing up SAP MaxDB in Veeam, many backup administrators are looking for a way to back up this database.
In general, MaxDB - as almost all databases - requires that the database volumes are in a consistent state while the backup is running.
But this requires Veeam support or at least VSS (Windows Volume Shadow Copy Service) integration of the database. However, there is no direct support by Veeam and SAP has not prepared MaxDB for VSS as well.
For such cases Veeam offers the possibility to use pre-freeze and post-thaw scripts within a backup job.
The Freezy solution
The pre-freeze script is used to quiesce the file system or application before Veeam creates a backup snapshot. After the backup snapshot is created, Veeam calls the post-thaw script that resumes the corresponding application.
For MaxDB, this means that you need to use a script that prevents updates to the database while the snapshot is being created. Typically, this is accomplished by stopping the DB's log writer so that no changes are stored incompletely when the backup is created.
However, this solution has some disadvantages.
Database will stand still
Stopping the log writer means that your database will stand still while the snapshot is being created, which is something a DBA usually wants to avoid at all costs. If something goes wrong between calling the scripts, your database will stand still until someone restarts the log writer.
The database doesn't know about the backup
A key feature of all databases is that they allow point-in-time restores. This means that you can use your backups and transaction logs to restore the database and recover it to any point in time (Recovery, for example, just before someone deleted your customer data). But without telling the database that there was a backup, there is no way to recover it beyond the snapshot.
SAP has a number of tools for system monitoring (CCMS, Solution Manager, EWA...). All of these tools also monitor your backups and your backup strategy for best practices. However, if you backup your database in a way that is not visible to SAP, you will never know if your backups are really working until you need them.
How to handle transaction logs?
Normally MaxDB generates transaction logs that also need to be included in a backup. But without backup integration, you either have to disable transaction logs completely (and that makes sense, since you can never use them) or delete them with another script in the file system.
So what is the alternative?
Using a VSS writer
Years ago, we here at dbosoft had the same problem and ended up developing our own VSS Writer that is capable of backing up MaxDB databases using any backup tool that supports VSS. Including Veeam.
We called our solution MaxBack VSS Writer.
VSS (Windows Volume Shadow Copy Service) is the underlying technology for all backup products that support consistent backup on Windows, and is not specific to any backup tool vendor. To enable VSS integration, a service is required to take care of the pre- and post-backup steps (and recovery).
With MaxBack VSS Writer installed on the database host, all that needs to be done in Veeam is to enable guest processing ("application-aware processing" option in the backup job).
No scripts are needed, nothing needs to be stopped in the database and the transaction log files are also processed automatically.
The VSS Writer works with the "external backup" feature of MaxDB. External backups are fully integrated with MaxDB just like normal backups.
If you want to learn more about MaxBack Veeam integration, have a look here: https://www.maxback.io/veeam.
- Author: Frank Wagner