将表格数据从一个数据库复制到另一个数据库

问题描述:

对于开发,我发现自己需要经常将表格信息从一个表格复制到另一个表格。我只是好奇什么是Postgres的最简单的解决方案。我有PGAdminIII,但看起来它确实只支持长期备份/恢复。将表格数据从一个数据库复制到另一个数据库

是否有python或bash脚本在某处或我可以给它的基本信息?

  • 这里是DB1
  • 这里是DB2
  • 复制表...
  • 去吧!

我相信SQLYog在Win32中为MySQL做了这些,但我现在在OSX上并使用Postgres。

如果您只是在两个PostgreSQL数据库之间移动,一个好方法是在管道(或pg_dump和psql)中使用pg_dump和pg_restore。基本上

pg_dump -Fc db1 | pg_restore -d db2 -c 

(调整开关为您的环境需要,请参见手册页)你已经安装了

它的工具,如果你只是想传送数据,而不是修改它,它会比像Kettle这样的全面的ETL要快得多。

+0

谢谢,这是完美的。 :) – PKKid 2010-01-17 05:00:47

水壶,又名pentaho数据集成可以为你做到这一点。 http://sourceforge.net/projects/pentaho/files/Data%20Integration/

  1. 下载水壶和解压。
  2. 确保你有一个java运行环境(1.5和1.6都适用于3.2稳定版本)。
  3. 运行spoon.sh
  4. 创建一个新的工作(文件/新建/工作)
  5. 定义源和目标连接(点击上面的树视图按钮,DBL单击数据库连接节点上打开连接向导或做菜单/精灵/创建数据库连接向导)
  6. 待办事项菜单/精灵/复制表向导
  7. 按照向导步骤
  8. 运行作业(工具栏上的播放按钮)