Skip to content

Dump et restoration Postgresql

Auteur : Philippe Le Van - @plv@framapiaf.org

Date : 23 avril 2021

Mise à jour : 13 juin 2021

Lancer pg_dump avec Docker

C'est un grand classique de postgres, le client postgres se retrouve toujours dans une version différente du serveur. Postgresql est très chatouilleux là dessus.

La solution pour ça, c'est d'utiliser docker pour garantir l'utilisation de la meme version coté client ou serveur.

Prenons l'exemple suivant, on veut sauvegarder en sql une base en version 11.10.

1
2
3
4
# sauvegarde la base et mets le dump dans le répertoire courant
sudo docker run -ti --rm --net=host -v $(pwd):/backup postgres:11.10-alpine pg_dump -h <db_host> -U<db_user> -f /backup/backup.sql -W <db_name>
# ça demande ensuite le password du user
Password:

Dump en SQL

Faire le dump avec pg_dump

1
2
pg_dump -h localhost -U<user_name> -f dump.sql -W <db_name>
Password: <saisir_le_pass>

Restaurer avec psql

1
2
cat dump.sql | psql -U<user_name> -h localhost -W <db_name>
Password: <saisir_le_pass>

Dump avec le format de backup de postgres

--à rédiger--