Skip site navigation (1) Skip section navigation (2)

Peripheral Links

Header And Logo

PostgreSQL
| The world's most advanced open source database.

Site Navigation

Search for
  Advanced Search

Re: Problème de droit à pg_restore



> Slt,

Salut,

> A chaque fois je bataille pour copier des bdd d'un poste à l'autre en
> changeant d'utilisateur.
>
> Pour sauvegarder je fait un classique pg_dump -Fc et pour restorer
> j'aimerai pouvoir faire pg_restore -d mabase -O monarchive
>
> Hors là je reçoit cette erreur :
> pg_restore: [programme d'archives (db)] could not execute query : ERROR:
> permission denied for language c
>
> Du coup je fait un pg_restore table par table, mais ce n'est pas des
> plus pratiques...

Voici ce que je fais lorsque que je restaure des bases entre différents
serveurs (à partir d'un dump classique) :
 - via l'utilisateur postgres sur la machine cible :
   * création du nouvel utilisateur (si pas déjà fait), via createuser
   * création de la base cible, via createdb, avec comme owner
l'utilisateur précédent
   * ajout des éventuels langages (plpgsql pour ma part) dans la base, via
createlang

 - restauration de la base avec pg_restore. Pour que les droits soient OK,
je lance le pg_restore en me connectant avec mon nouvel utilisateur,
comme ça tout les objets créés lui appartiennent. Éventuellement, je
passe l'option --no-owner, si tout appartient à ce utilisateur.

Avec ça, je récupère seulement un warning de permission pendant le
pg_restore, car il essaie d'installer le langage plpgsql (mais bon, il est
déjà installé, donc c'est pas grave).
Après, pour installer des programmes C, il faut peut-être des permissions
supplémentaires ?

En espérant que ça puisse t'aider ,

 - Jonathan




Home | Main Index | Thread Index

Privacy Policy | PostgreSQL Archives hosted by Command Prompt, Inc. | Designed by tinysofa
Copyright © 1996 – 2008 PostgreSQL Global Development Group