D/ DJANGO CON CRITERIO

UNIDAD 10 · GOBERNANZA DE POSTGRESQL

Backup y restauración ensayada con pgAdmin

Comprueba que una copia permite recuperar datos y acceso en una base aislada.

Ilustración: La prueba de recuperación
La prueba de recuperación

CAPÍTULO 8 · La base de datos también tiene fronteras

Un respaldo solo adquiere valor cuando sabemos restaurarlo

Podemos guardar un archivo de backup y sentir que la información está protegida. Pero ese archivo todavía no demuestra que sepamos recuperar la base, que contenga lo necesario o que las cuentas puedan trabajar después de restaurarla. La recuperación es una capacidad que necesita práctica, no únicamente un archivo conservado.

Ensayamos la restauración en un destino aislado y comprobamos datos, estructura y acceso. Observamos qué depende del respaldo y qué debe configurarse aparte. También registramos el procedimiento para que no exista solo en la memoria de quien lo ejecutó por primera vez.

Con esta prueba cerramos la preparación de la base: conocemos sus identidades, límites y una ruta de recuperación. SensorHub ya tiene condiciones para salir del computador del equipo. El siguiente tramo lleva todas esas decisiones a un alojamiento concreto, empezando por reconocer qué recursos de Azure necesitamos y qué papel cumple cada uno.

Leer esta parte dentro del relato completo →

DEL RELATO A LA PRÁCTICA

Vamos a desarrollar esta decisión con su mapa, explicación, código y ejercicio.

MIRA · CONECTA · COMPRENDE

La prueba de recuperación

La prueba de recuperación1. Origen: Identifica alcance de copia; 2. Backup: Protege el archivo generado; 3. Restauración: Usa una base aislada; 4. Ensayo: Valida datos y acceso01OrigenIdentifica alcance de copia02BackupProtege el archivo generado03RestauraciónUsa una base aislada04EnsayoValida datos y acceso

Las flechas resumen el recorrido conceptual. Los controles y dependencias se detallan debajo.

Selecciona una pieza para destacar su responsabilidad.

Leer la explicación del mapa
  1. Origen. Identifica alcance de copia
  2. Backup. Protege el archivo generado
  3. Restauración. Usa una base aislada
  4. Ensayo. Valida datos y acceso
Descargar gráfico SVG ↓

¿Para qué sirve?

Un archivo de backup existente no prueba recuperación. Hay que poder restaurarlo con una versión compatible y verificar contenido y permisos.

El concepto, explicado

Un backup lógico copia objetos y datos de una base. Roles y otros objetos globales requieren planificación aparte. Conserva versión de herramientas, formato, fecha y política de acceso al archivo.

En pgAdmin selecciona la base y Backup; el formato Custom permite usar Restore y pg_restore. Elige una ubicación controlada. Para probar, crea una base vacía de recuperación y restaura allí, nunca encima de PROD como ensayo.

Propietarios y grants del origen pueden no existir en el destino. Decide si recrearlos o restaurar sin propietario/ACL y aplicar después una política de roles explícita. Cambiar permisos no forma parte automática de comprobar integridad de datos.

Verifica conteos, relaciones, una consulta de negocio y acceso con el usuario runtime. Mide cuánto tardas; ese tiempo importa para el objetivo de recuperación. Un dump puede contener información personal y merece control de acceso.

Implementación paso a paso

  1. Define alcance, formato y destino protegido del backup.
  2. Genera la copia con herramientas compatibles con el servidor.
  3. Crea una base de ensayo identificada y comprueba su conexión.
  4. Restaura revisando advertencias, propietarios y extensiones.
  5. Valida datos, roles y una consulta del negocio.
  6. Registra duración y resultado sin adjuntar datos sensibles al informe.

Ejemplo en SensorHub

# Terminal con PGSERVICE/pgpass configurados de forma segura.
# Los servicios sensorhub_origen y sensorhub_restore deben estar definidos.
pg_dump --dbname=service=sensorhub_origen --format=custom --file=sensorhub.dump
pg_restore --list sensorhub.dump
# El servicio de restauración apunta a una base vacía de ensayo:
pg_restore --dbname=service=sensorhub_restore --no-owner --no-acl --exit-on-error sensorhub.dump
# Después aplica propietarios y permisos previstos para el destino.
# En pgAdmin: Backup > Custom, luego Restore en la base de ensayo.

Cómo leer el ejemplo

  • --no-owner y --no-acl omiten esas asignaciones originales; no crean tu política de permisos.
  • El rol restaurador debe poder crear los objetos previstos.
  • Una restauración de ensayo y una recuperación real tienen destinos y autorizaciones diferentes.

Error habitual

No termines todas las conexiones ni borres tablas de producción para probar una copia.

05 / PRACTICAR

Tu turno

La restauración termina pero el runtime no puede consultar tablas. ¿Se completó la prueba?

Ver solución orientativa

No. Verifica propietarios, USAGE, grants y la conexión de runtime. La prueba incluye acceso funcional además de que pg_restore termine.

Cómo sabes que funciona

  • Hay una restauración aislada con datos comprobados.
  • Los roles limitados funcionan y la duración queda registrada.

Para profundizar

Documentación oficial para comprobar configuración, permisos y condiciones vigentes. Revisión del tema: 11 de octubre de 2026.

CONTINUAR LA EXPERIENCIA

El siguiente paso del recorrido:

Azure: recursos, App Service y plan →Continuar en modo relato