Mik*_*nen 7 postgresql backup restore errors
我有一个 postgres 9.1 服务器正在运行,我用
pg_dumpall -c -f /nfs/backup/fulldump.sql
Run Code Online (Sandbox Code Playgroud)
我正在测试将备份恢复到另一台服务器
psql -f /nfs/backup/fulldump.sql
Run Code Online (Sandbox Code Playgroud)
以用户身份运行时postgres
出现两个错误
psql:/nfs/backup/fulldump.sql:27: ERROR: current user cannot be dropped
psql:/nfs/backup/fulldump.sql:36: ERROR: role "postgres" already exists
Run Code Online (Sandbox Code Playgroud)
我知道这些是由命令引起的
DROP ROLE postgres;
CREATE ROLE postgres;
Run Code Online (Sandbox Code Playgroud)
在备份转储中。
是否有可能以某种方式恢复转储pg_dumpall -c
而不会出现任何错误?
我最终使用 grep 来完成此操作:
egrep -v '^(CREATE|DROP) ROLE postgres;' dump.sql \
| psql -X -v ON_ERROR_STOP=1 -1 ...
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
5429 次 |
最近记录: |