Restaurar backups de PostgreSql

Vamos a continuar con las operaciones que deben ser habituales para el mantenimiento de nuestras base de datos.

Hasta ahora ya habíamos visto cómo hacer un backup en Postgresql, y también, cómo hacerlo de manera automática.

Vamos ahora a la otra punta del circuito: restaurar una base desde nuestros backups.

El comando que vamos a utilizar (y conocer) es pg_restore.

Si lo aplicara a los ejemplos que antes dí sobre pg_dump, nuestro ejemplo de pg_restore seria el siguiente.

pg_restore -i -h localhost -p 5432 -U postgres -d mibase -v "/home/damian/backups/mibase.backup"

Una vez que lo ejecutemos, se nos pedirá la contraseña del usuario que vamos a usar.

Para conocer los parámetros que podemos pasarle al comando, nada mejor que darse una vuelta por la documentación oficial, ya que hay algún que otro detalle que estaría bueno conocer (y además, porque es buena práctica leer la documentación oficial).

Sobre los parámetros del ejemplo, paso a detallarlos.

  • -i le indica que ignore la versión (entre el comando y la base de datos).
  • -h localhost es el host de nuestro PostgreSql.
  • -p 5432 es la indicación del puerto donde corre el servicio.
  • -U postgres especifica que se usará el usuario postgres para la operación.
  • -d mibase es para que realize la restauración sobre una base de datos en particular, en este caso mibase.
  • -v ejecutará el comando en modo verbose (así podremos ir viendo la salida de cada paso del proceso).
  • /home/damian/backups/mibase.backup es el archivo que usaremos como backup y que queremos ingresar.

Hasta ahora, ya hemos podido realizar backups, automatizarlos, y ahora, ya podremos restaurar nuestras bases de datos desde la consola sin problemas.

Una recomendación para los que estén empezando a conocerse con PostgreSql, es suscribirse a la lista de correo en español.