Alternativa a pg_dump
Para las copias de seguridad lógicas, Databasus se construye sobre pg_dump. En lugar de reemplazar pg_dump, Databasus amplía sus capacidades con gestión de copias de seguridad, interfaz web, programación automática, integración con almacenamiento en la nube, notificaciones, funciones de trabajo en equipo y cifrado integrado. Más allá de los respaldos lógicos, Databasus también admite copias físicas, copias incrementales con archivado de WAL y recuperación a un punto en el tiempo (Point-in-Time Recovery).
Comparación rápida
Este es un resumen de cómo Databasus amplía la funcionalidad básica de pg_dump:
| Función | pg_dump | Databasus |
|---|---|---|
| Motor de copias | pg_dump | Construido sobre pg_dump |
| Gestión de copias de seguridad | ❌ No | ✅ Sí |
| Soporte de otras bases de datos | Solo PostgreSQL | PostgreSQL, MySQL, MariaDB, MongoDB |
| Interfaz | Línea de comandos | Interfaz web + API |
| Programación | Manual o scripts de cron | ✅ Programador integrado |
| Destinos de almacenamiento | Sistema de archivos local | Local, S3, Google Drive, R2, Azure, NAS, Dropbox |
| Compresión | gzip, LZ4, zstd (manual) | zstd (automática, optimizada) |
| Cifrado | Requiere herramientas externas | ✅ AES-256-GCM integrado |
| Notificaciones | ❌ Ninguna | ✅ Slack, Teams, Telegram, correo, webhooks |
| Funciones para equipos | ❌ Ninguna | ✅ Espacios de trabajo, RBAC, registros de auditoría |
| Políticas de retención | Scripts de limpieza manuales | ✅ Retención automática |
| Monitorización de salud | ❌ Ninguna | ✅ Comprobaciones de salud integradas |
| Copias físicas | ❌ No | ✅ Sí |
| Copias incrementales | ❌ No | ✅ A nivel de bloque (PG 17+) |
| Point-in-Time Recovery | ❌ No | ✅ Sí |
| Copias remotas | ✅ Sí (CLI) | ✅ Sí |
¿Qué es pg_dump?
pg_dump es la utilidad nativa de PostgreSQL para crear copias de seguridad lógicas. Forma parte de PostgreSQL desde el principio y es la herramienta estándar para exportar bases de datos.
Puntos fuertes de pg_dump
- Copias portables: crea volcados en formato SQL o personalizado que pueden restaurarse en distintas versiones de PostgreSQL.
- Copias selectivas: puede exportar tablas o esquemas concretos, o bases de datos completas.
- Instantáneas consistentes: usa el MVCC de PostgreSQL para crear copias consistentes sin bloquear las escrituras.
- Soporte universal: disponible en cualquier instalación de PostgreSQL, bien documentado y probado durante años.
- Formatos de salida flexibles: SQL plano, personalizado, directorio o tar.
Limitaciones de pg_dump
Aunque pg_dump es potente, usarlo en producción suele requerir scripts adicionales:
- Sin programación integrada: requiere tareas de cron o programadores externos.
- Solo almacenamiento local: escribe en el sistema de archivos local; subir a la nube requiere scripts adicionales.
- Sin cifrado: los archivos de respaldo no están cifrados por defecto; hay que encadenar la salida con gpg o herramientas similares.
- Sin notificaciones: no hay forma de recibir avisos de éxito o fallo sin scripts propios.
- Sin gestión de retención: las copias antiguas deben limpiarse a mano o con scripts.
- Solo línea de comandos: sin interfaz visual para monitorizar o administrar.
Cómo Databasus amplía pg_dump
Databasus usa pg_dump como motor de copias: conserva todas las ventajas de los respaldos lógicos y añade funciones empresariales.
Bajo el capó: cuando lanza una copia de seguridad en Databasus, este ejecuta pg_dump con parámetros optimizados y luego se encarga de la compresión, el cifrado y la subida al destino de almacenamiento configurado.
Interfaz web
En lugar de memorizar las opciones de línea de comandos de pg_dump, Databasus ofrece una interfaz web donde puede:
- Añadir bases de datos con un asistente de conexión guiado
- Configurar horarios de copia con controles visuales
- Ver el historial y el estado de las copias de un vistazo
- Descargar o restaurar copias con un clic
- Consultar gráficos de salud y disponibilidad de las bases de datos
Compresión optimizada
Databasus usa por defecto compresión zstd (nivel 5), que ofrece:
- Archivos de 4 a 8 veces más pequeños que los volcados sin comprimir
- ~20% de sobrecoste en tiempo de ejecución, mucho más rápido que gzip
- Gestión automática, sin necesidad de encadenar herramientas de compresión
Más allá de pg_dump: copias físicas y PITR
Aunque Databasus se apoya en pg_dump para los respaldos lógicos, también va más allá de lo que pg_dump puede ofrecer:
- Copias físicas: copias a nivel de archivos de todo el clúster de la base de datos mediante
pg_basebackup. Copia y restauración más rápidas para bases de datos grandes. - Copias incrementales y de WAL: copias incrementales a nivel de bloque mediante
pg_basebackup --incremental(basadas en los resúmenes de WAL del servidor) más streaming continuo de WAL mediantepg_receivewal, lo que habilita la recuperación a un punto en el tiempo: restaure a cualquier segundo entre copias. - Recuperación ante desastres: diseñado para requisitos de pérdida de datos casi nula con copias base físicas y streaming continuo de WAL.
Estas copias se apoyan en el mecanismo de respaldo nativo de PostgreSQL 17, de modo que Databasus reutiliza las herramientas probadas de PostgreSQL en lugar de reinventarlas. Requieren PostgreSQL 17 o superior; en versiones anteriores solo están disponibles las copias lógicas con pg_dump. Todo se ejecuta de forma remota desde el host de Databasus a través del protocolo de replicación, así que no se instala nada en el servidor de la base de datos. A las redes cerradas se llega mediante un túnel SSH hacia un host interno o un bastión, por lo que la base de datos nunca tiene que exponerse públicamente. Lea cómo funcionan las copias físicas y PITR.
Automatización de copias
Uno de los retos más habituales con pg_dump es montar copias automáticas fiables.
Automatización tradicional con pg_dump
Un script típico de automatización de pg_dump puede parecerse a esto:
#!/bin/bash
# Backup script for pg_dump
DATE=$(date +%Y%m%d_%H%M%S)
BACKUP_DIR="/backups"
DB_NAME="mydb"
# Create backup
pg_dump -Fc -h localhost -U postgres $DB_NAME > $BACKUP_DIR/$DB_NAME_$DATE.dump
# Compress (if not using custom format)
# gzip $BACKUP_DIR/$DB_NAME_$DATE.sql
# Encrypt
gpg --encrypt --recipient backup@company.com $BACKUP_DIR/$DB_NAME_$DATE.dump
# Upload to S3
aws s3 cp $BACKUP_DIR/$DB_NAME_$DATE.dump.gpg s3://my-bucket/backups/
# Cleanup old backups (keep last 7 days)
find $BACKUP_DIR -name "*.dump*" -mtime +7 -delete
# Send notification on failure
if [ $? -ne 0 ]; then
curl -X POST https://hooks.slack.com/... -d '{"text":"Backup failed!"}'
fiEste script hay que mantenerlo, probarlo y monitorizarlo. Cada base de datos requiere su propia entrada de cron.
Automatización con Databasus
Con Databasus, la misma funcionalidad viene integrada:
- Programador visual: configure copias cada hora, diarias, semanales, mensuales o con cron a horas concretas.
- Compresión automática: la compresión zstd se aplica automáticamente.
- Cifrado integrado: cifrado AES-256-GCM con claves únicas por copia.
- Subida a la nube: subida directa a S3, Google Drive, Cloudflare R2, Azure y otros destinos.
- Políticas de retención: limpieza automática de copias antiguas según su configuración de retención.
- Notificaciones: avisos a Slack, Teams, Telegram o correo electrónico en caso de éxito o fallo.
Opciones de almacenamiento
pg_dump escribe en el sistema de archivos local. Llevar las copias a un almacenamiento en la nube requiere herramientas y scripts adicionales.
Destinos de almacenamiento de Databasus
Databasus admite varios destinos de almacenamiento de serie:
- Almacenamiento local
- Amazon S3 y servicios compatibles con S3
- Google Drive
- Cloudflare R2
- Azure Blob Storage
- NAS (almacenamiento conectado en red)
- Dropbox
Cada base de datos puede tener su propio destino de almacenamiento y puede configurar varios destinos para redundancia.
Ver todas las opciones de almacenamiento →
Notificaciones
Saber cuándo las copias tienen éxito o fallan es fundamental para proteger los datos.
Notificaciones con pg_dump
pg_dump no tiene sistema de notificaciones. Necesita:
- Escribir scripts envoltorio que comprueben los códigos de salida
- Integrarse con herramientas de monitorización externas
- Montar sus propios canales de alertas
Notificaciones de Databasus
Databasus incluye notificaciones integradas para:
- Slack
- Discord
- Telegram
- Microsoft Teams
- Correo electrónico
- Webhooks (para integraciones personalizadas)
Configure qué eventos disparan notificaciones: copia con éxito, copia fallida o ambos.
Ver todos los canales de notificación →
Funciones para equipos
pg_dump es una herramienta de línea de comandos para un solo usuario. Databasus añade funciones de colaboración para equipos:
Capacidades de Databasus para equipos
- Espacios de trabajo: organice bases de datos, notificadores y almacenamientos por proyecto o equipo. Los usuarios solo ven los espacios de trabajo a los que fueron invitados.
- Control de acceso basado en roles: asigne permisos de lector, editor o administrador para controlar lo que puede hacer cada miembro del equipo.
- Registros de auditoría: siga todas las actividades y cambios del sistema. Esencial para el cumplimiento de seguridad y la trazabilidad.
- Notificaciones compartidas: los canales del equipo reciben automáticamente el estado de las copias.
Más sobre la gestión de accesos →
Seguridad
La seguridad es donde Databasus aporta más valor frente al uso directo de pg_dump.
Seguridad con pg_dump
pg_dump crea archivos de respaldo sin cifrar. Protegerlos requiere:
- Encadenar la salida con herramientas de cifrado (gpg, openssl)
- Gestionar las claves de cifrado por separado
- Garantizar el almacenamiento seguro y la rotación de las claves
- Configurar permisos de archivo adecuados
Seguridad de Databasus
Databasus implementa la seguridad en varios niveles:
- Cifrado AES-256-GCM: todas las contraseñas, tokens y credenciales están cifrados. La clave de cifrado se guarda separada de la base de datos.
- Cifrado único por copia: cada archivo de respaldo se cifra con una clave única derivada de la clave maestra, el ID de la copia y una sal aleatoria.
- Acceso de solo lectura a la base de datos: exige permisos solo de SELECT; así, incluso si la cuenta se ve comprometida, los datos no pueden corromperse.
Más sobre la seguridad de Databasus →
Proceso de restauración
Ambas herramientas permiten restaurar copias, pero con flujos distintos.
Restaurar copias de pg_dump
Restaurar una copia de pg_dump requiere:
- Localizar el archivo de respaldo
- Descifrarlo si está cifrado
- Descomprimirlo si está comprimido
- Ejecutar
pg_restoreopsqlcon los parámetros correctos
Restaurar copias de Databasus
Databasus simplifica la restauración:
- Descarga con un clic: descargue cualquier copia directamente desde la interfaz web.
- Descifrado automático: las copias se descifran automáticamente al descargarlas.
- Comandos de restauración listos: Databasus muestra el comando
pg_restoreexacto para cada copia. - Restauración en paralelo: aproveche varios núcleos de CPU para restaurar más rápido bases de datos grandes.
Instalación
Instalación de pg_dump
pg_dump viene con PostgreSQL. Si tiene PostgreSQL instalado, ya tiene pg_dump.
Instalación de Databasus
Databasus ofrece varios métodos de instalación:
- Script de una línea: instala Docker (si hace falta), configura Databasus y activa el arranque automático.
- Docker run: un solo comando para arrancar con PostgreSQL incorporado.
- Docker Compose: para tener más control sobre el despliegue.
Conclusión
pg_dump es la utilidad de respaldo probada de PostgreSQL, y Databasus se construye directamente sobre ella. Elegir entre usar pg_dump directamente o a través de Databasus depende de sus necesidades.
Use pg_dump directamente si:
- Necesita exportaciones puntuales o bajo demanda de la base de datos
- Se siente cómodo escribiendo y manteniendo scripts de shell
- Ya tiene infraestructura de automatización (Ansible, Terraform, etc.)
- Solo necesita copias locales sin almacenamiento en la nube
- Es un desarrollador que trabaja solo y con necesidades simples
Use Databasus si:
- Quiere copias automáticas y programadas sin escribir scripts
- Necesita guardar las copias en la nube (S3, Google Drive, etc.)
- Quiere cifrado integrado sin gestionar claves a mano
- Necesita notificaciones cuando las copias tienen éxito o fallan
- Trabaja en equipo y necesita funciones de colaboración
- Prefiere una interfaz visual antes que herramientas de línea de comandos
- Quiere políticas de retención y limpieza automáticas
- Necesita copias físicas, copias incrementales o Point-in-Time Recovery para la recuperación ante desastres
Databasus se construye sobre pg_dump para los respaldos lógicos y lo amplía con automatización, seguridad y funciones para equipos. Además admite copias físicas, copias incrementales con archivado de WAL y Point-in-Time Recovery, capacidades que pg_dump sencillamente no puede ofrecer.