Intentando hacer una copia de seguridad incremental por hora de un único servidor Postgres (Win7 64).
Tengo la siguiente configuración en postgresql.conf:
max_wal_senders = 2
wal_level = archive
archive_mode = on
archive_command = 'copy "%p" "c:\\postgres\\foo\\%f"'
(reiniciar)
Hice una copia de seguridad base con pg_basebackup -U postgres -D ..\foo -F t -x
Lo que hizo un gran base.tararchivo en la foocarpeta y agregó algunos archivos de 16,384 KB, que supongo que son WAL.
Lo que no entiendo es por qué los WAL foono cambian . Los WAL en data/pg_xlogcambio. ¿Se supone que pg no debe copiarlos? ¿Cómo decide hacerlo?
Tal vez necesito configurar archive_timeout=3600?
He visto varios sitios (listas de correo de pg, página de postgres de bacula) que dicen que debe llamar a pg_start_backup () y pg_stop_backup (), pero creo que no son necesarios. ¿Es eso cierto?
Preguntas secundarias:
¿Con qué frecuencia se escriben los WAL
data/pg_xlog? ¿Qué desencadena una escritura?Parece actualizar un WAL si hago algo de DML y luego
\qen psql. O edite una tabla en pgAdmin y luego cierre la ventana. Pensé que escribiría en commit.¿Mejores prácticas? pg_basebackup una vez por semana? ¿Archivar WAL en la misma máquina que PG o una máquina remota?
fuente

pg_basebackup, ya se encarga de esto. 3. Postgres eliminará automáticamente los archivos WALpg_logcuando ya no sean necesarios. No deberías hacer nada manualmentepg_log. De lo contrario, vea elwal_keep_segmentsparámetropg_xlogestá completamente administrado automáticamente por postgres, mientras que la carpeta de archivo está completamente administrada por el DBA.Existe una herramienta existente que lo ayudará mucho, WAL-E . Proporciona un
archive_commandyrestore_commandpara PITR a S3.No hay comandos para hacer copias de seguridad lógicas incrementales o diferenciales .
pg_dumpno puede tomar un incremental o diferencial. La única forma de hacerlo es mediante el archivo de registro.En teoría, podría tomar una nueva copia de seguridad completa, hacer una diferencia binaria entre ella y la última copia de seguridad, y cargar la diferencia. Sin embargo, esto me parece una forma frágil e ineficiente de hacer las cosas, y realmente no lo recomendaría.
Además, PgBarman admite la integración con S3 a través de scripts de enlace y automatizará gran parte de la rotación y administración de copias de seguridad. De nuevo, esto puede no ser una opción en Windows.
fuente