假设我有两台主机服务器s1和s2.在这两个服务器中,我都有一个名为n1的模式,现在我对s1的模式n1中的一些表进行了一些更改.我希望对服务器s2的模式n1做同样的更改.我计划做的是使用pg_dump备份服务器s1的模式n1,并使用pg_restore在服务器s2中进行恢复.现在我的问题是,因为服务器s2中已经有相同的模式n1和相同的表集.恢复过程将做什么?它会覆盖现有的表,还是应该删除服务器s2的现有架构,并使用服务器s1的转储恢复它?
假设我有两台主机服务器s1和s2.在这两个服务器中,我都有一个名为n1的模式,现在我对s1的模式n1中的一些表进行了一些更改.我希望对服务器s2的模式n1做同样的更改.我计划做的是使用pg_dump备份服务器s1的模式n1,并使用pg_restore在服务器s2中进行恢复.现在我的问题是,因为服务器s2中已经有相同的模式n1和相同的表集.恢复过程将做什么?它会覆盖现有的表,还是应该删除服务器s2的现有架构,并使用服务器s1的转储恢复它?
如果使用pg_restore
的--clean
选项,在创建新表之前,旧表将被删除.
如果不使用--clean
选项,则会收到一条错误消息,表明该表已经存在,但pg_restore
将继续处理,除非使用--exit-on-error
选项.