Antes de usar los ejemplos
Este tutorial usa una exportación lógica con formato personalizado. Revisá primero qué base y qué esquema querés incluir: un esquema no equivale a una base completa ni a todo el servidor. Adaptá los ejemplos antes de ejecutarlos.
Revisión técnica del : se corrigieron ejemplos y se añadieron aclaraciones documentadas; no se ejecutaron comandos sobre bases de datos para esta revisión.
Ventajas
- Los backups o copias de seguridad se pueden hacer en caliente, esto quiere decir que durante el proceso de backup los usuarios pueden estar conectados a la base de datos.
- Se puede configurar para que genere un archivo de registros (log) para revisar los mensajes del proceso.
- Es fácil de transportar y restaurar en otra máquina.
- El formato personalizado usado en este ejemplo admite compresión; no todos los formatos de exportación se comportan igual.
Desventajas
- Cada ejecución exporta una base de datos; no incluye por sí sola todos los objetos globales del clúster.
Parámetros necesarios para ejecutar backup o copia de seguridad con pg_dump
- Ubicar el proceso pg_dump.exe
El artículo original usaba estas rutas de PostgreSQL 13; son referencias históricas. Localizá tu instalación y verificá su compatibilidad con el servidor: C:\Program Files (x86)\PostgreSQL\13\bin (Windows 32 bits) o C:\Program Files\PostgreSQL\13\bin (Windows 64 bits)
- --host=
IP de la máquina que contiene la base de datos, si esta se encuentra localmente usamos la palabra localhost.
- --port=
Puerto de la base de datos.
- --username=
Usuario de la base de datos que usaremos para realizar backup o copia de seguridad.
- --dbname=DATABASE_NAME: nombre de la base de datos que se exportará; no es el nombre del esquema.
- --schema=
Filtro opcional por patrón de esquema. Puede dejar dependencias fuera de la exportación; revisá su alcance y las mayúsculas del nombre.
- --verbose
Mostrará comentarios detallados de los diferentes objetos de la base de datos (tablas, índices, vistas etc.).
- --format=c
La opción--format=c, con c minúscula, selecciona el formato personalizado; es flexible, permite la selección manual y el reordenamiento de los elementos durante la restauración.
- --file=
En este parámetro debemos incluir dos cosas
- Nombre de la carpeta que guardara el archivo de backup o copia de seguridad.
- Nombre que le pondremos al archivo de backup o copia de seguridad.
- > file.log 2>&1
Nombre que usaremos para el archivo que guardará todos los registros (log) del proceso de respaldo.
Para entenderlo mejor veamos el siguiente ejemplo
- Windows Server 64 bits
- IP: 10.0.0.1
- Puerto: 5432
- Usuario de la base de datos: pgusuario
- Esquema que exportaremos: DB1
- Destino del respaldo: B:\Respaldos
En CMD, prepará esta plantilla reemplazando YOUR_VERSION, DATABASE_NAME, SCHEMA_PATTERN, las rutas y la conexión. El escenario anterior no especifica la base de datos. Elegí archivos de salida nuevos para no sobrescribir otro respaldo o log. Usá permisos suficientes en PostgreSQL y en las carpetas: abrir CMD como administrador no concede permisos en la base.
"C:\Program Files\PostgreSQL\YOUR_VERSION\bin\pg_dump.exe" --host=10.0.0.1 --port=5432 --username=pgusuario --dbname=DATABASE_NAME --schema=SCHEMA_PATTERN --verbose --format=c --file="B:\Respaldos\Backup.bak" > "B:\Respaldos\Backup.log" 2>&1Comprobá que puedas recuperar los datos
Un archivo generado no prueba que la recuperación funcione. Ensayá una restauración en un destino aislado. Si querés exportar la base completa, revisá si corresponde quitar el filtro de esquema; aun así, una exportación lógica no sustituye todo un plan de recuperación.
Fuentes: opciones y límites de pg_dump y copias mediante SQL dump.
Comentarios (0)
Todavía no hay comentarios publicados. Podés ser la primera persona en participar.