PostgreSQL La base de donnees la plus sophistiquee au monde.

Forums PostgreSQL.fr

Le forum officiel de la communauté francophone de PostgreSQL

Vous n'êtes pas identifié(e).

#1 23/10/2008 18:02:35

tiana
Membre

postgresql 8.2 et pg_restore

salut !!!
j'ai sauvegardé mes tables ta et tb en utilisant pg_dump . je voulais restorer ces tables dans tempta et temptb.
ma question est la suivante peut-on specifier les noms des tables qui recevront les données lors de la restauration avec pg_restore?
si oui , comment le faire ?

Hors ligne

#2 23/10/2008 19:46:17

gleu
Administrateur

Re : postgresql 8.2 et pg_restore

Si ta sauvegarde est au format SQL et qu'elle n'est pas trop grosse, tu peux toujours modifier la sauvegarde avec un éditeur de texte. Sinon il te faut la restaurer telle quelle et modifier ensuite le nom des tables.


Guillaume.

Hors ligne

#3 24/10/2008 10:52:54

tiana
Membre

Re : postgresql 8.2 et pg_restore

ma sauvegarde est au format .backup

Hors ligne

#4 24/10/2008 11:05:47

gleu
Administrateur

Re : postgresql 8.2 et pg_restore

Il existe trois formats avec pg_dump : plain (SQL), tar et custom. Sans option -F de pgAdmin, la sauvegarde est au format plain. Le moyen le plus simple pour le savoir est d'ouvrir la sauvegarde avec un éditeur de texte. Si tu vois des requêtes SQL, c'est le format plain et dans ce cas, tu peux modifier le fichier pour changer les noms des tables. Pense à le faire pour toutes les occurences du nom de la table (création de la table, ajout de contraintes, d'index, insertion des données, etc.)

Bref, le plus simple, c'est de renommer les tables après coup.


Guillaume.

Hors ligne

#5 24/10/2008 14:05:42

tiana
Membre

Re : postgresql 8.2 et pg_restore

merci,
j'ai ouvert la sauvegarde et j'ai trouvé les requêtes SQL;c'est donc le format plain. je m'appliique à renommer les tables et vous direz quoi.
merci

Hors ligne

#6 25/10/2008 13:23:22

tiana
Membre

Re : postgresql 8.2 et pg_restore

salut !!
j'ai un problème avec le pg_restore ;j'envoi la commande suivante :

c:\Program Files\PostgreSQL\8.2\bin pg_restore -i -h localhost -p5432 -c -d ma_nouvelle_base -U nom-utilisateur c:\monfichier.backup

à l'éxécution , il affiche ce message :

pg_restore: [archiver] le fichier en entrée ne semble pas être une archive valide

pourtant le monfichier.backup est le fichier obtenur après la sauvegarde avec pg_dump

comment résoudre le problème??

Hors ligne

#7 25/10/2008 15:02:51

gleu
Administrateur

Re : postgresql 8.2 et pg_restore

Vu qu'il s'agit d'une sauvegarde au format SQL, il faut la restaurer avec l'outil psql. Ça doit donner quelque chose comme cela :

psql -f nom_fichier nom_base

Guillaume.

Hors ligne

#8 27/10/2008 13:19:32

tiana
Membre

Re : postgresql 8.2 et pg_restore

ok , ça marche !!!
merci

Hors ligne

Pied de page des forums