Sauvegarde/Restauration d’une base de données PostgreSQL

Sauvegarde
pg_dump base_de_donnees > fichier_de_sortie

Restaurer la sauvegarde
psql base_de_donnees < fichier_d_entree

psql --set ON_ERROR_STOP=on base_de_données < infile

La capacité de pg_dump et psql à écrire et à lire dans des tubes permet de sauvegarder 
une base de données directement d'un serveur sur un autre. Par exemple :
pg_dump -h serveur1 base_de_donnees | psql -h serveur2 base_de_donnees

Utilisation de pg_dumpall

pg_dumpall > fichier_de_sortie

Le fichier de sauvegarde résultant peut être restauré avec psql :
psql -f fichier_d_entree postgres
Gérer les grosses bases de données
Compresser le fichier de sauvegarde.  Tout programme de compression habituel est 
utilisable. Par exemple gzip :
pg_dump base_de_donnees | gzip > nom_fichier.gz

Pour restaurer :
gunzip -c nom_fichier.gz | psql base_de_donnees
ou
cat nom_fichier.gz | gunzip | psql base_de_donnees

Couper le fichier avec split 
par exemple, pour faire des morceaux de 1 Mo :
pg_dump base_de_donnees | split -b 1m - nom_fichier

Pour restaurer :
cat nom_fichier* | psql base_de_donnees

Utilisation du format de sauvegarde personnalisé de pg_dump
pg_dump -Fc base_de_donnees > nom_fichier

Le format de sauvegarde personnalisé ne produit pas un script 
utilisable par psql. Ce script doit être restauré avec pg_restore, 
par exemple :

pg_restore -d nom_base nom_fichier

 

Publicités

Laisser un commentaire

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l'aide de votre compte WordPress.com. Déconnexion /  Changer )

Photo Google+

Vous commentez à l'aide de votre compte Google+. Déconnexion /  Changer )

Image Twitter

Vous commentez à l'aide de votre compte Twitter. Déconnexion /  Changer )

Photo Facebook

Vous commentez à l'aide de votre compte Facebook. Déconnexion /  Changer )

Connexion à %s