如何解决pg_dump和pg_restore无法正常工作
我是Postgres的新手,我有一个具有多个数据库实例的数据库主机(HOST1),现在我已配置了另一个主机(HOST2)。
我在HOST1上使用pg_dump
创建了一个转储文件,并在HOST2上运行了pg_restore
。我看到还原无法在新主机HOST2中使用所需的GRANTS还原数据库角色。
我是否需要使用pgdumpall
从HOST1捕获具有相关GRANTS /特权的所有数据库角色,然后还原到HOST2?
解决方法
特别是您需要使用pg_dumpall -g
。这将仅捕获全局数据(角色,表空间等)。它不会捕获GRANT
输出中的pg_dump
信息。您遇到的问题是pg_restore
试图为数据库集群全局信息中不存在的GRANT
授予ROLEs
特权。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。