是否可以指示 9.0 的 pg_dump 提供向后兼容的转储,或者强制 8.3 的 pg_restore 使用该转储?
换句话说,在使用 pg_restore 8.3 恢复由 9.0 生成的转储时,我有哪些解决此错误的选项:
pg_restore: [archiver] unsupported version (1.12) in file header
此转储/恢复版本冲突的可能注意事项是什么?
最佳答案
创建纯文本转储:
pg_dump mydb > db.sql
psql -d newdb -f db.sql
这应该可以正常工作,因为它不存储版本信息,并且在转储中使用纯 SQL 格式。使用 COPY 恢复数据,因此速度很快。如果您在数据库中使用了一些 9.0 功能,那么您必须手动编辑转储中的架构以使其在 8.3 上运行。然而,Blob 可能无法在这种格式下存活下来;我没有测试过)。
关于postgresql - pg_dump 9.0 到 pg_restore 8.3,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5535809/