0

我想将两个表从数据库 A 复制到数据库 B,在 postgres 中如何使用 pg_dump 来完成它而不会丢失数据库 B 中以前的表和数据?

我在 Stack Overflow 中阅读了一些建议使用 pg_dump 的答案,但在我阅读的文档页面中?

这种转储方法背后的想法是使用 SQL 命令生成一个文本文件,当反馈给服务器时,它将重新创建与转储时相同状态的数据库

这不是意味着它会删除数据库B中以前的数据吗?

如果有人能告诉我一步一步的解决方案,将数据库 A 中的两个表移动到数据库 B 而不会丢失数据库 B 中的任何先前数据,那将会很有帮助。

4

2 回答 2

3

我找到了我的问题的答案:

sudo -u OWNER_USER pg_dump -t users databasename1 | sudo -u OWNER_USER psql databasename2
于 2013-07-22T06:02:24.083 回答
0
  1. 如果你 pg_restore a 数据库到 b 数据库,当然 a 将替换 b。而是选择您要使用 pg_restore -t 恢复的特定表
  2. 您可以使用 -O (no_owner) pg_restore 到不同的模式

所以说

pg_dump -Fc -f dump.dmp -v -h host -U user_login -n schema_to_dump

你可以

pg_restore -v -h host -U user_login -n schema_to_import -a --disable-triggers dump.dmp
于 2013-07-22T06:08:50.860 回答