如何使用 TerraForm 升级 RDS 实例的 PostgreSQL 版本?

Vin*_*ent 5 postgresql amazon-rds terraform

我当前的 RDS 实例运行的是 PostgreSQL 9.6.3 版,但我想将其升级到 10.1 版。但是,当我在 TerraForm 配置中设置新版本号并设置allow_major_version_upgrade为 true 时,我遇到了以下错误:

Error: Error applying plan:

1 error(s) occurred:

* aws_db_instance.db_instance: 1 error(s) occurred:

* aws_db_instance.db_instance: Error modifying DB Instance db-example: InvalidParameterCombination: Cannot find upgrade path from 9.6.3 to 10.1.
  status code: 400, request id: <id>
Run Code Online (Sandbox Code Playgroud)

事实上,当我将 9.6.4 设置为新版本号时,我收到了类似的错误消息 - 这已经很令人困惑了,因为auto_minor_version_upgrade也设置为 true,但实例仍然在 9.6.3。

正如您所看到的,我仍然需要掌握很多 RDS 和 PostgreSQL,因此也非常欢迎任何可以帮助我理解问题的背景信息。


编辑:

设置完毕后只是 allow_major_version_upgrade为true,而不真正修改导致该错误的版本:

* aws_db_instance.db_instance: Error modifying DB Instance db-example: InvalidParameterCombination: No modifications were requested
Run Code Online (Sandbox Code Playgroud)

Vin*_*ent 1

正如 @ydaetskcoR 指出的,您只能升级到 RDS目前支持9.6.5的 PostgreSQL 版本。

\n\n

auto_minor_version_upgrade正如亚马逊不久前发送的一封电子邮件中所述,从 9.6.3 到 9.6.5 的升级也不会在受支持后立即发生:

\n\n
\n

从 2018 年 1 月 22 日开始,如果您的数据库实例启用了 \xe2\x80\x9c 自动次要版本升级\xe2\x80\x9d 选项,我们将在维护时段内使用上述相同方案自动升级您的 PostgreSQL 数据库实例。如果您此时不希望应用这些升级,请在 2018 年 1 月 20 日之前将 \xe2\x80\x9c自动次要版本升级\xe2\x80\x9d 选项设置为“否”。

\n
\n