PostgreSQL es un potente sistema de base de datos relacional de objetos de código abierto que usa y extiende el lenguaje SQL combinado con muchas funciones que almacenan y escalan de forma segura las cargas de trabajo de datos más complicadas.
API de copia de seguridad de PostgreSQL que usa Backup and DR
Copias de seguridad a nivel del volumen (seguimiento de bloques de cambios de Linux y instantáneas de LVM): La copia de seguridad y la DR usan los comandos
pg_start_backup(label)
ypg_stop_backup()
de PostgreSQL cuando realizan copias de seguridad con el seguimiento de bloques de cambios de Linux y la instantánea de LVM.Copias de seguridad completas e incrementales (tradicionales basadas en archivos): La copia de seguridad y la DR usan los comandos de copia de seguridad basados en archivos
pg_dump
de PostgreSQL. El comandopg_dump
no tiene una opción para capturar cambios incrementales de una base de datos, por lo que cada copia de seguridad es una copia de seguridad completa de volcado de base de datos.El restablecimiento de la base de datos la recupera reemplazando físicamente el área de datos.
Copia de seguridad de registros de PostgreSQL: Durante una copia de seguridad de registros, la copia de seguridad y la DR copian físicamente todos los WAL de PostgreSQL (
WriteAheadLog
). Para purgar los registros, la copia de seguridad y la DR usan un comando a nivel del SO.
Cómo funciona: Copia de seguridad basada en volúmenes de copia de seguridad y DR con CBT de Linux
Solo se realiza un seguimiento de los bloques modificados en el mapa de bits: no hay operaciones de copia en escritura ni operaciones intensivas de E/S.
En los siguientes pasos, se describe el proceso de copia de seguridad y recuperación de datos:
El agente de Backup and DR tiene CBT para hacer un seguimiento de los bloques modificados en el área de datos de la base de datos.
El agente llama a la API de la base de datos para inmovilizarla o pausarla para crear una copia de seguridad de los datos.
El agente crea una instantánea de LVM del área de datos de la base de datos y sintetiza un mapa de bits.
Llamada del agente a la API de la base de datos para descongelarla
El agente copia los bloques modificados en el dispositivo de copia de seguridad o recuperación, que luego borra la instantánea y cataloga la copia de seguridad.
El dispositivo emite una instantánea interna y sintetiza una copia de seguridad completa virtual de un momento determinado.
Para la recuperación de datos, Backup and DR activa de forma inmediata un disco de preparación reescribible y pone la base de datos en línea.
El comando de inactividad o reactivación se ejecuta en el principal para un trabajo de instantánea a nivel del volumen:
select pg_start_backup(<label>);
select pg_stop_backup();
Los comandos de inactividad y reactivación se ejecutan en un nodo en espera para un trabajo de instantánea a nivel del volumen:
Si la versión de PostgreSQL es 10.x o posterior, haz lo siguiente:
select pg_wal_replay_pause();
select pg_wal_replay_resume();
Si la versión de PostgreSQL es 9.x, haz lo siguiente:
select pg_xlog_replay_pause();
select pg_xlog_replay_resume();
Cómo funciona: copia de seguridad basada en archivos
En los siguientes pasos, se describe el proceso para realizar la copia de seguridad y la recuperación de datos con imágenes de copia de seguridad basadas en archivos:
El agente de Backup and DR se implementa en el servidor de bases de datos.
Activa el disco de preparación en el servidor de base de datos.
Invoca la copia de seguridad completa con el comando de copia de seguridad de volcado y escribe la copia de seguridad en el disco activado.
La copia de seguridad y la DR toman una instantánea interna. Las copias de seguridad de registros se realizan de manera similar directamente desde el sistema de archivos en cualquier programa que configures.
Para la recuperación de datos, la copia de seguridad y la DR activan de forma instantánea el disco de preparación en el servidor de la base de datos e inician la operación de restablecimiento de la base de datos. Los registros se pueden reproducir en cualquier momento después de restablecer la base de datos.
¿Qué sigue?
Prepara la base de datos para la copia de seguridad y la DR
Otra documentación sobre las copias de seguridad y la DR para PostgreSQL
- Copia de seguridad y DR para PostgreSQL
- Prepara la base de datos para la copia de seguridad y la DR
- Cómo agregar un host de base de datos de PostgreSQL y descubrir bases de datos
- Define plantillas de políticas y perfiles de recursos
- Establece los detalles y la configuración de la aplicación
- Cómo verificar el formato del disco de preparación y el método de copia de seguridad
- Protege la base de datos de PostgreSQL y sus registros
- Cómo activar una base de datos de PostgreSQL
- Cómo recuperar copias de seguridad de PostgreSQL
- Crea un flujo de trabajo de copia de seguridad y DR de PostgreSQL