Como hacer backup de una base de datos Postgresql via CRON

13 de junio, 2019 @ 10:21 — 0 comentariosDescargar PDF

Muy a menudo surge la necesidad de realizar backups de una base de datos postgresql de manera periódica, para tener un archivo histórico de backups de la misma a lo largo del tiempo.

Para ello, podemos crear un cron en nuestro plan de alojamiento que realice un backup periódico de la base de datos y guarde dicho backup en un archivo en el plan de alojamiento.

En primer lugar accederemos via ssh

Como acceder vía SSH a tu cuenta

 

Creamos la carpeta que albergará los backups

mkdir copias

 

Crearemos un archivo que albergará el comando que ejecutará el dump de la base de datos.

touch cron.sh ; chmod +x cron.sh

 

Entonces rellenaremos el archivo con este contenido

 pg_dump --no-owner --dbname=postgresql://usuario:password@postgresql.guebs.net:5432/nombrebasededatos > copias/nombrebasedetos-$(date +%s).sql

 

Ahora sólo debemos establecer el cron, cuyo comando será

~/cron.sh

Para ello lo primero sera acceder a nuestro Panel de Hosting. Encontraremos en la sección Utilidades, el icono del Programador de tareas CRON

utilidades de guebs

si accederemos a el, veremos un formulario sencillo para programar nuestra tarea.

Programación

En la programación definimos la frecuencia con la que se debe ejecutar el comando:

  • Cada 5 minutos
  • Cada 15 minutos
  • Cada 30 minutos
  • Cada hora
  • Una vez al día
  • Una vez por semana
  • Una vez al mes
  • Avanzado...

Normalmente lo más adecuado es poner como período un día, pero el formato de fecha especificado en el ejemplo anterior permite una granularidad mayor.

Comando

Aquí registraremos el comando que queremos que se ejecute periódicamente, en nuestro caso

 

./cron.sh

 

Y con esto tendremos creado el cron de nuestra base de datos.