web-dev-qa-db-fra.com

pg_dump: échec de la requête [archiver (db)]: ERREUR: autorisation refusée pour les abouts de relation

J'essaye de vider ma pg db mais j'ai ces erreurs s'il vous plaît suggérer

pg_dump: [archiver (db)] query failed: ERROR:  permission denied for relation abouts
pg_dump: [archiver (db)] query was: LOCK TABLE public.abouts IN ACCESS SHARE MODE
13
Jai Kumar Rajput

Il peut s'agir d'une erreur courante lors de l'utilisation d'un ROLE (utilisateur) qui n'a pas pu ouvrir les objets pour les vider.

Comme indiqué précédemment, vous pouvez accorder au schéma spécifique que vous souhaitez vider, ou même utiliser un attribut ROLE avec SUPERUSER.

Notez que lorsque vous traitez avec certains fournisseurs de bases de données cloud, comme AWS/RDS, vous ne recevrez pas d'utilisateur avec l'attribut SUPERUSER, vous devrez donc vous assurer que celui utilisé pour le vidage aura tout accès nécessaire.

https://www.postgresql.org/docs/current/static/sql-grant.html montrera comment donner GRANT à de nombreux objets de votre base de données, mais rappelez-vous également que lorsque la restauration, vous devrez d'abord créer la base de données. Uniquement si vous utilisez pg_dumpall ce n'est pas nécessaire, mais vous devez également vider le ROLES.

11
Vinnix

L'utilisateur auquel vous effectuez votre pg_dump as n'a pas d'autorisations sur le schéma public.

Ajouter des autorisations si autorisé:

GRANT USAGE ON SCHEMA public TO <user>;
GRANT SELECT ON ALL TABLES IN SCHEMA public TO <user>;
15
d1ll1nger