Skip to main content

Disaster Recovery

The ability to restore access and functionality to an IT infrastructure after a disaster event—whether natural or man-made—is essential for business continuity.

In the context of PostgreSQL databases, a Disaster Recovery Plan (DRP) is a documented and detailed strategy that typically includes backup and data replication policies.

Disaster recovery relies on data replication and processing at a location unaffected by the disaster. This means that if the server(s) become inactive due to a disaster or equipment failure, it is possible to recover the lost data from a secondary location where the data backup was performed.

PostgreSQL's Point-in-Time Recovery (PITR) is a sophisticated data recovery feature that allows the system to be restored to a specific state prior to a data corruption event or hardware failure.

pgBackRest

Available in PostgreSYS, pgBackRest is an advanced backup and restore tool for PostgreSQL environments. Its main features include:

  • Efficiency: Supports parallel backups and the transfer of compressed files to local or remote storage.
  • Flexibility: Enables full, incremental and differential backup.
  • Integrity: Utilizes Checksums to ensure data integrity during backup and restore processes.
  • Economy: Allows interrupted backups to be resumed, optimizing time and resources.
  • Security: Offers encryption to protect stored backups.
  • Performance: Provides Delta Restore capabilities to accelerate the recovery process.
  • Compatibility: Supports multiple PostgreSQL versions, including the latest releases.
  • Technology Freedom: Open-source tool designed for efficient and reliable backup operations.

Architecture

  • Stanzas: Backup configurations for PostgreSQL servers. A stanza may include multiple servers, with the first typically being the primary (master) and the others acting as replicas.
  • Repositories: Storage locations for backups. Repositories can be local or remote and may include encryption support for secure storage.
figure 1 - pgBackRest Repositories
figure 1 - pgBackRest Repositories