你好,我正在配置一个指向外部 AWS RDS 实例(PostgreSQL 11.x)的环境。
我注意到在通过 UI 尝试备份时出现以下错误:
[2019-10-25 21:50:35] 正在转储数据库的公共模式...
[2019-10-25 21:50:35] pg_dump:服务器版本:11.5;pg_dump 版本:10.10 (Debian 10.10-1.pgdg100+1)
[2019-10-25 21:50:35] pg_dump:因服务器版本不匹配而中止
我想这是因为 Docker 容器中的 pg_dump 版本与外部 RDS 数据库的版本不匹配。有什么建议可以解决这个问题吗?我是否应该改用非 11.x 版本的外部数据库?
Falco
(Falco)
2
当前支持的 PostgreSQL 版本是 10.x。我们计划在下一个发布周期中升级到 12.x。
Google Cloud Platform 默认提供 PostgreSQL 11。版本 10 仅作为“测试版”提供。
我们何时能期待对 11.x 的支持?
Falco
(Falco)
4
我们计划在几个月内升级到 12.x 版本。11.x 版本将被跳过。
我们已经部署了 PostgreSQL 11。
可以继续使用该版本吗?
是否只有备份功能无法使用?
如果无法通过导出/导入的方式,该如何降级到 10?
Falco
(Falco)
6
由于 PostgreSQL 在保持功能正常运行方面非常稳健,不会轻易移除功能,因此应该可以正常工作,但备份和恢复功能除外,这取决于容器内 pg_dump 的版本。
我们不运行它,也不对其进行测试,因此如果出现任何问题,需自行解决。
reidab
(Reid Beels)
7
我们当时处境相同:部署在 GCP 托管的 Postgres 11 上,因为 文档 要求 Postgres 10 及以上版本。
我们最终在引导脚本中添加了一个自定义命令,安装 PG 11 客户端工具,并将 pg_dump 默认切换为该版本。
- exec:
cmd:
- apt-get update && apt-get install postgresql-client-11 && update-alternatives --install /usr/bin/pg_dump pg_dump /usr/lib/postgresql/11/bin/pg_dump 1
sam
(Sam Saffron)
8
这是一个合理的变通方案,我们计划在未来几个月内将官方镜像中的 PostgreSQL 升级到 12 版本。
Falco
(Falco)
9
我们现在运行 PostgreSQL 12 update AWS RDS 中可用。