我有一个运行 PostgreSQL v9.0 的(生产)数据库服务器和一个运行 PostgreSQL v8.4 的开发机器。我想转储生产数据库并在开发机器上使用它。我无法升级开发机器上的 postgres。
在生产机器上,我运行:
pg_dump -f nvdls.db -F p -U nvdladmin nvdlstats
在开发机器上,我运行:
pg_restore -d nvdlstats -U nvdladmin nvdls.db
我得到了这个错误:
pg_restore: [archiver] unsupported version (1.12) in file header
无论我在转储时选择自定义、tar 还是纯文本格式,都会发生这种情况。
我在网上找到了一个讨论,建议我应该pg_restore
在开发机器上使用更新版本的。我通过简单地将 9.0 二进制文件复制到开发机器来尝试此操作,但由于链接问题而失败(并非意外)。
我认为使用纯文本转储的目的在于它是原始的、可移植的 SQL。显然不是。
如何将 9.0 DB 安装到我的 8.4 安装中?