我有一个 postgres 9.1 服务器正在运行,我用它做备份
pg_dumpall -c -f /nfs/backup/fulldump.sql
我正在测试将备份恢复到另一台服务器
psql -f /nfs/backup/fulldump.sql
以用户身份运行时postgres
出现两个错误
psql:/nfs/backup/fulldump.sql:27: ERROR: current user cannot be dropped
psql:/nfs/backup/fulldump.sql:36: ERROR: role "postgres" already exists
我了解这些是由命令引起的
DROP ROLE postgres;
CREATE ROLE postgres;
在备份转储中。
是否有可能以某种方式从pg_dumpall -c
没有任何错误的情况下恢复转储?
我最终为此使用了grep: