Backup of Database Systems
You can instruct Veeam Agent for Linux to create consistent backups of Veeam Agent computers that run one of the supported database systems using application-aware processing..
- MySQL
- Oracle
Veeam Agent processes the Oracle database system using internal components: oralib and oracleproxy.
- PostgreSQL
Veeam Agent processes the PostgreSQL database system using an internal component: pgsqlagent.
To learn how processing of database systems works, see the Backup of Database Systems section in the Veeam Agent for Linux User Guide.
Backup of Database Archived Logs
If you back up the Oracle or PostgreSQL database system using a backup job managed by Veeam backup server, Veeam Backup & Replication can also back up archived logs. You can use archived logs to restore the database system to the necessary state up to the certain operation. Veeam Backup & Replication backs up archived logs in the similar way as in a backup job for VMs, with the same requirements and limitations.
To learn more about backup of Oracle database archived logs, see Oracle Log Backup.
To learn more about backup of PostgreSQL database archived logs, see PostgreSQL Log Backup.
Considerations and Limitations
Consider the following about application-aware and database processing:
- Nosnap Veeam Agent for Linux and nosnap Veeam Agent for Linux on Power do not support application-aware processing and cannot be used to back up database systems.
- Application-aware processing and database processing options are available if you have selected the Server option at the Job Mode step of the wizard.
- Application-aware processing and database processing options are available if you have selected the Entire computer or Volume level backup option at the Backup Mode step of the wizard.
- If there are multiple database systems on the Veeam Agent computer, consider the following:
- Veeam Agent supports processing of multiple PostgreSQL or Oracle database systems on one Veeam Agent computer.
- Veeam Agent does not support processing of multiple MySQL database systems on one Veeam Agent computer.
- Veeam Agent does not support processing of multiple database systems of different types on one Veeam Agent computer.
- Veeam Agent does not support 32-bit database systems installed on a 64-bit Linux OS.
- Available script settings depend on the options that you have selected at the Job Mode and Backup Mode steps of the wizard. To learn more, see Backup Job and Snapshot Scripts.
Requirements and Limitations of MySQL Processing
- Veeam Agent for Linux supports processing of MySQL database systems version 5.7 – 9.0.
- Configurations with multiple MySQL installations or instances on the same machine are not supported.
- MySQL Cluster versions are not supported.
- MySQL tables that use the MyISAM storage engine must be locked to keep them in consistent state while Veeam Agent is creating the system snapshot. To correctly process such tables, MySQL account must have the following instance-wide privileges:
- SELECT. This privilege enables Veeam Agent to access tables' metadata and select for a lock the tables that use the MyISAM storage engine. Without this privilege, the processing of the MySQL database system will run successfully but MyISAM tables will not be locked, which may result in an inconsistent state of the backed up data.
- LOCK TABLES. This privilege is required for locking the selected MyISAM tables. If some MyISAM tables are selected but the MySQL account does not have the LOCK TABLES privilege, the processing of the MySQL database system will fail.
- RELOAD or FLUSH_TABLES. If some MyISAM tables are selected but the MySQL account does not have either RELOAD or FLUSH_TABLES privilege, the processing of the MySQL database system will fail.
To obtain information about the privileges that are assigned to an account, use MySQL functionality, for example, the SHOW GRANTS statement. To learn more, see MySQL documentation.
Requirements and Limitations for Oracle Processing
- Oracle Database versions 11g – 21c are supported for all operating systems supported by Veeam Agent for Linux. To learn more, see System Requirements.
- Automatic Storage Management (ASM) is not supported.
- Oracle Real Application Clusters (RAC) are not supported.
- Oracle Grid Infrastructure is not supported.
- Oracle Database Express Edition (XE) is not supported.
- SAP on Oracle is not supported.
- Oracle Database architectures with Data Guard are not supported.
General Requirements and Limitations for PostgreSQL Processing
- Veeam Agent supports processing of PostgreSQL database systems version 13 – 18.
- Veeam Agent supports backup of PostgreSQL clusters managed by Patroni, for backup jobs managed by Veeam Backup & Replication only. To learn more, see Requirements and Limitations for Processing PostgreSQL Clusters below. Veeam Agent does not support other high availability cluster configurations and replication setups of PostgreSQL servers.
- In PostgreSQL 15 and earlier, Veeam Agent does not support configuration sub-files that are specified in the include, include_dir and include_if_exist options in the postgresql.conf file. All PostgreSQL configurations, instance ports in particular, must be specified in the single postgresql.conf file.
Starting from PostgreSQL 16, the pg_hba.conf and pg_ident.conf files can also have configuration sub-files specified in the include, include_dir and include_if_exist options. Veeam Agent does not support these configuration sub-files either. Make sure that in PostgreSQL 16 and later all configurations are specified only in the postgresql.conf, pg_hba.conf and pg_ident.conf files.
Requirements and Limitations for Processing PostgreSQL Clusters
Veeam Agent supports consistent backup of PostgreSQL clusters managed by Patroni, an open-source tool that automates and manages high availability (HA) for PostgreSQL clusters, providing automatic failover, leader election and cluster health monitoring. Consider the following requirements and limitations:
- Patroni cluster processing is supported only for backup jobs managed by Veeam backup server. Backup jobs managed by Veeam Agent do not support Patroni cluster processing.
- Patroni cluster backup is supported for computers running as physical machines, or as virtual machines on VMware vSphere, Microsoft Hyper-V, Nutanix AHV, Proxmox VE, Scale Computing HyperCore, or HPE Morpheus VM Essentials.
- Only Linux-based operating systems are supported.
- PostgreSQL database system versions 13 – 18 are supported.
- Patroni versions starting from 4.0.6 are supported.
- The patronictl utility must be installed on the database system.
- Veeam Agent always detects Patroni cluster awareness automatically; this behavior cannot be disabled.
- Veeam Agent does not support using a network share as a temporary location for log shipping — doing so causes WAL files to be backed up twice.
- If a cluster node becomes unreachable, Veeam Agent cannot collect WAL files from that node.
- If the PostgreSQL instance terminates unexpectedly (which also stops Patroni) and PostgreSQL does not create a .partial WAL file, a gap occurs in the backed-up log chain for that period.
How Patroni Cluster Processing Works
During backup, Veeam Agent automatically determines the role of each node in the Patroni cluster and creates a consistent backup that includes log shipping from the primary node, which enables point-in-time recovery. Veeam Agent also automatically rescans the cluster topology in the background during backup of physical and virtual machines with application-aware processing enabled, to keep track of role changes such as failover.
Because WAL files are generated on the primary node only, and the pg_start_backup() function cannot be called on a replica node, Veeam Agent must know the role of each node before starting backup. To process a Patroni cluster, Veeam Agent performs the following operations:
- Veeam Agent detects Patroni processes on the operating system to obtain the Patroni API endpoint.
- Veeam Agent uses the Patroni API to determine the role of each node in the cluster (primary or replica).
- Veeam Agent verifies that the primary node is included in the backup job — this is required for WAL log shipment.
- On replica nodes, Veeam Agent triggers a checkpoint to determine the redo log sequence number (LSN).
- Veeam Agent triggers the pg_start_backup() function on the primary node to determine the LSN range for the backup.
|
NOTE |
|
You can use Veeam Explorer for PostgreSQL to restore Patroni cluster instances and individual databases from a backup. For information about restoring Patroni instances and databases, see the Veeam Explorer for PostgreSQL section of the Veeam Backup & Replication User Guide. |
Related Topics