0

我需要一次性将数据从 PostgreSQL 数据库中的一个表复制到另一个数据库中的相应表。没有那么多数据:大约 2500 行,8 列(一些数字,一些 varchar)。

我的第一个想法是简单地pg_dump -a -t table -f output.file然后pg_restore在另一个数据库上。然而,事实证明,pg_dump和源服务器的版本不匹配 - 我无法控制版本,所以升级不是一种选择:

pg_dump: server version: 9.1.2; pg_dump version: 9.0.5
pg_dump: aborting because of server version mismatch

不幸的是,在 Postgres 版本 9 中,选项-i(忽略版本)不再可用。我确实知道我在做什么,但它仍然不会让我(自然地)。

我还有什么其他选择?

4

1 回答 1

0

我会使用COPY TOand COPY FROM。适用于任何一个版本,是实现此目的的最佳工具。

如果要使用pg_dump,则必须使用适当的版本。每个版本都有单独的可执行文件。在 Linux 上,您可以使用which pg_dump.

于 2012-07-10T10:20:11.700 回答