pg_restore会覆盖现有的表吗?

Kar*_*hik 12 postgresql pg-dump pg-restore psql postgresql-9.5

假设我有两台主机服务器s1和s2.在这两个服务器中我都有一个名为n1的模式,现在我对s1的模式n1中的一些表进行了一些更改.我希望对服务器s2的模式n1进行相同的更改.我打算做的是使用pg_dump备份服务器s1的模式n1,并使用pg_restore在服务器s2中恢复.现在我的问题是,因为服务器s2中已经存在具有相同表集的相同模式n1.恢复过程会做什么?它会覆盖现有的表还是应该删除服务器s2的现有模式并使用服务器s1的转储来恢复它?

Lau*_*lbe 29

如果使用--clean选项pg_restore,则在创建新表之前将删除旧表.

如果您不使用该--clean选项,您将收到表已存在的错误消息,但pg_restore除非您使用该--exit-on-error选项,否则将继续处理.

  • 它只会丢弃它试图恢复的那些表.其他表格将保持不变. (4认同)