Las copias de seguridad de las Bases de Datos es uno de los puntos más importantes en toda empresa, es por ello que en esta entrada vas a conocer las herramientas según el tipo de «backup» en PostgreSQL.
Antes de conocer las herramientas, hay que conocer los dos tipos de copias de seguridad existentes en Postgres, los backup lógicos y los backup físicos.
Backup en PostgreSQL lógico
Las copias de seguridad lógicas son independientes de la versión de PostgreSQL en que se realice, es decir, es posible realizar un copia de seguridad de la versión 9.5 y restaurar dicho respaldo en una instancia cuya versión sea 12.
Básicamente es una instantánea de los datos actuales que estén almacenados, aquellos datos que se almacenen durante el proceso de este backup, no serán contemplados en la copia de seguridad, es decir, no se permiten las copias de seguridad «en caliente«.
Herramientas para backup lógico
La herramienta pg_dump se utiliza para realizar un backup lógico de una única base de datos, mientras que la herramienta pg_dumpall permite realizar una copia de seguridad lógica de todas las bases de datos de una instancia incluido los objetos globales.
Ambas herramientas permiten seleccionar algunos de los objetos a almacenar de forma individual, como pueden ser las tablas. También permite realizar una copia de seguridad solo de las estructuras de los objetos o únicamente los datos almacenados.
Backup en PostgreSQL físico
Las copias de seguridad a nivel físico son dependientes de la versión de la instancia de PostgreSQL. Por lo que sólo se puede restaurar un backup físico de la misma versión y arquitectura.
A diferencia del tipo lógico, este tipo de copia de seguridad se puede realizar en caliente. Así pues, las transacciones realizadas mientras se realiza este backup, se almacenan junto con la copia de seguridad.
Herramientas para backup físico
Para realizar las copias de seguridad físicas tenemos la herramienta pg_basebackup. Con esta herramienta se puede realizar un backup completo de toda la instancia mientras que el sistema PostgreSQL sigue funcionando. Además, se puede realizar la copia de seguridad en remoto.
Se pueden utilizar otras herramientas para realizar un backup físico, tales como: copy, scp o la herramienta rsync. Pero para ello el sistema PostgreSQL tiene que estar parado. Aunque existen las funciones pg_stat_backup(‘label’) y pg_stop backup() que permiten que se pueda realizar un backup físico en caliente con las herramientas nombradas anteriormente. Es más, si hacemos uso de pg_basebackup utiliza dichas funciones internamente.
Conclusión
Las herramientas a utilizar para realizar los backup en PostgreSQL, dependerán del tipo de copia de se seguridad y de si es necesario almacenar en el respaldo las transacciones en ejecución. Existen otras herramientas que no vienen incluidas con Postgres, para ello puedes ver el ecosistema de PostgreSQL.
Si tienes dudas en el proceso de copia de seguridad para los datos de tu empresa, Abatic Soluciones Tecnológicas somos formadores. Tenemos diversos cursos en nuestra plataforma TodoPostgreSQL y si acudes a nuestro formulario de contacto estaremos encantados de ayudarte.
necesito asesoramiento sobre base postgres
Muy buenas Pablo, puedes dejarnos tus necesidades en el formulario de contacto de nuestra plataforma de formación todopostgresql
Un saludo!