在装有 Postgresql 10 的服务器上进行转储并将其放入 rsync.net
pg_dump -Z1 -Fc <db_name> | ssh <user>@s<server> "dd of=dump"
在另一台装有 Postgresql 9.5 降级的服务器上创建转储并尝试恢复数据库。步骤是
cat dump | sed '/AS integer/d' > downgraded_dump.sql
pg_restore -j 2 -d <db> downgraded_dump.sql
pg_restore 因分段错误而失败。
我不知道出了什么问题。
如果您需要降级 PostgreSQL,您唯一的希望是“纯格式”转储 (
pg_dump -F p
)。如果您没有破坏转储文件,pg_restore
会告诉您它拒绝从更新版本恢复转储。
您可以尝试将纯格式转储恢复到旧的 PostgreSQL 版本,但第一次尝试可能会失败。然后你必须编辑 SQL 脚本并修改语法,以便它可以恢复到旧的 PostgreSQL 版本。
这是一个繁琐的过程,但是 PostgreSQL 不支持降级。