私のpg dbをダンプしようとしていますが、これらのエラーが発生しました
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
これをダンプするためにオブジェクトを開くことができなかったROLE
(ユーザー)を使用する場合、これは一般的なエラーになる可能性があります。
前に述べたように、ダンプしたい特定のスキーマに許可したり、ROLE
をSUPERUSER
属性とともに使用したりすることもできます。
AWS/RDSなどの一部のクラウドデータベースプロバイダーを扱っている場合は、SUPERUSER
属性を持つユーザーを受け取ることができないため、ダンプに使用されたプロバイダーがすべてを持っていることを確認する必要があります。アクセスが必要です。
https://www.postgresql.org/docs/current/static/sql-grant.html は、データベース上の多くのオブジェクトにGRANT
を与える方法を示しますが、復元するには、最初にデータベースを作成する必要があります。 pg_dumpall
を使用している場合のみ必要ですが、ROLES
もダンプする必要があります。
実行しているユーザーpg_dump
には、パブリックスキーマに対する権限がありません。
許可されている場合は、権限を追加します。
GRANT USAGE ON SCHEMA public TO <user>;
GRANT SELECT ON ALL TABLES IN SCHEMA public TO <user>;