pg_dumpall而不删除超级用户

时间:2018-03-22 17:01:20

标签: postgresql database-restore postgresql-9.6 pg-dumpall

我有一个postgres 9.6。我正在使用pg_dumpall -c --if-exists选项。

当我作为超级用户从此备份文件还原时,我在尝试删除该角色时收到错误current user cannot be dropped。之后,当我尝试创建超级用户角色时,我得到role "mysuperuser" already exists

这两个错误不会影响还原的成功。但是,我不想得到像这样的无关错误。

我能做的是删除正在删除的两行并创建上述超级用户角色。

有更好的方法吗?因为为了实现这一点,我需要打开一个巨大的文件并进行编辑。

1 个答案:

答案 0 :(得分:0)

你可能想加入一个postgreql.org邮件列表,看看其他人是否已经发生这种烦恼。它显然不是理想的行为。

虽然有一个简单的解决方法。创建一个新的超级用户(在备份中不存在)并使用该用户进行还原。