问题描述
我正在尝试将 ubuntu 18.04 LTS 中的 postgresql 10 作为主服务器复制到 ubuntu 16.04 中的 postgresql 9.5 从服务器,但出现错误
postgres@localhost:/root$ pg_basebackup -h 139.162.4.197 -U replication -p 5432 -D /var/lib/postgresql/9.5/main/ -Fp -Xs -P -R
Could not change directory to "/root": Permission denied
Password:
pg_basebackup: incompatible server version 10.16 (Ubuntu 10.16-1.pgdg18.04+1)
但是当使用相同的 postgresql 版本如
它复制得很好
但是当使用不同的 postgresql 版本如
出现上述错误
pg_basebackup: 不兼容的服务器版本 10.16 (Ubuntu 10.16-1.pgdg18.04+1)
解决问题的任何线索
解决方法
这对于流式复制是不可能的;马的评论引用the documentation:
通常,运行不同主要 PostgreSQL 版本级别的服务器之间的日志传送是不可能的。
但是从 PostgreSQL v10 开始,您可以使用 logical replication,它也适用于主要版本之间。问题在于并非所有内容都被复制:DDL 语句不是。