我需要一个简单的例子,展示如何将数据库 DB1 表格 T1 的数据复制到数据库 DB2 表格 T2 中。
T2 和 T1 拥有相同的结构(相同的列名和属性,只是数据不同)。DB2 运行在与 DB1 相同的服务器上,但使用不同的端口。
我需要一个简单的例子,展示如何将数据库 DB1 表格 T1 的数据复制到数据库 DB2 表格 T2 中。
T2 和 T1 拥有相同的结构(相同的列名和属性,只是数据不同)。DB2 运行在与 DB1 相同的服务器上,但使用不同的端口。
如果两个数据库位于不同的服务器实例上,您可以从db1
中以CSV格式导出数据,然后将数据导入db2
:
COPY (SELECT * FROM t1) TO '/home/export.csv';
然后再加载回 db2
:
COPY t2 FROM '/home/export.csv';
需要注意的是,两个不同数据库实例上的两个表必须具有相同的结构。
使用命令行工具:pg_dump 和 psql,您可以按照以下方式进行操作:
pg_dump -U postgres -t t1 db1 | psql -U postgres -d db2
pg_dump
和 psql
的服务器地址和/或端口。db2.t2
引用了架构db2
中的表,而不是"数据库"db2) - user330315COPY (SELECT * FROM t1)
而不是 COPY t1
?同时省略 db1
和 db2
限定符。 - Laurenz Albe pg_dump -t table_name_to_copy source_db | psql target_db