Manipuler le dump d’une base PostgreSQL

Pour toutes les manipumations qui suivent, il faut ĂȘtre connectĂ© en tant qu’utilisateur postgres :

%> su - postgres

Dumper une base

La commande pg_dump permet d’afficher la structure d’une base nom_de_la_base ainsi que ses donnĂ©es sur la sortie standard.

En utilisant une redirection de la sortie standard vers un fichier, on réalise donc une copie de la base.

%> pg_dump -D {nom_de_la_base} > {nom_du_fichier.dump}

RecrĂ©er une base Ă  partir d’un dump

S’il y a besoin de restaurer une base, ou d’en construire une nouvelle à partir d’une base existante, il faut utiliser un fichier de dump.

Dans un premier temps, effacer la base existante si besoin :

%> dropdb {nom_de_la_base}

Dans un deuxiÚme temps, recréer ou créer la base :

%> createdb {nom_de_la_base}

Dans un troisiĂšme temps, importer dans la base le fichier de dump :

%> psql -e {nom_de_la_base} < {nom_du_fichier.dump}

Pour importer le dump, on peut aussi le faire en étant connecté à la base (utile lorsque le postmaster demande une authentification par mot de passe [1]) en utilisant la commande psql :

nom_de_la_base=# \i {nom_du_fichier.dump}

Ainsi la base est créée et initialisée avec la structure et les données déclarées dans le fichier de dump. Celui-ci étant en mode texte il est trés facile de le modifier avec un éditeur.

PS : Dans tous les cas, pour que cela fonctionne, il faut que le serveur de base de donnĂ©s PostgreSQL fonctionne sur la machine. C’est une erreur courante que d’oublier de le dĂ©marrer.

[1] car dans ce cas lĂ , on ne peut pas faire la redirection de l’entrĂ©e standart

Laisser un commentaire