我正在将 Aurora RDS 从 Aurora 1.x (MySQL 5.6) 升级到 Aurora 2.x (MySQL 5.7)。我已经在 AWS 中完成了它(手动通过快照,因为它仍然不支持通过简单的单击),我正在尝试声明 rm并将其导入Terraform (我已经升级了 Terraform 中的代码) ,它成功了,但是terraform 计划想要销毁并重新创建集群(因此也是实例),原因如下:
availability_zones.#: "3" => "2" (forces new resource)
availability_zones.1924028850: "eu-west-1b" => "eu-west-1b"
availability_zones.3953592328: "eu-west-1a" => "eu-west-1a"
availability_zones.94988580: "eu-west-1c" => "" (forces new resource)
[...]
engine: "aurora-mysql" => "aurora" (forces new resource)
[...]
对于 RDS 集群,我在 TF 中所做的更改是:
- engine = "aurora"
- engine_version = "5.6.10a"
+ engine = "aurora-mysql"
+ engine_version = "5.7.12"
对于参数组(集群和实例):
- family = "aurora5.6"
+ family = "aurora-mysql5.7"
参数组导入成功。
我怀疑问题可能是因为它试图将正确的引擎“ aurora-mysql ”更改为错误的“ aurora ”,但为什么呢?!它已导入好的,在我的 Terraform 代码中也可以。这是一个TF错误吗?我什么也找不到。
我正在使用Terraform v0.11.7
从文档:
Aurora MySQL 2.x 的引擎名称是 aurora-mysql;Aurora MySQL 1.x 的引擎名称仍然是 aurora。Aurora MySQL 2.x 的引擎版本是 5.7.12;Aurora MySQL 1.x 的引擎版本仍为 5.6.10a。Aurora MySQL 2.x 的默认参数组是 default.aurora-mysql5.7;Aurora MySQL 1.x 的默认参数组继续为 default.aurora5.6。Aurora MySQL 2.x 的数据库集群参数组系列名称为 aurora-mysql5.7;Aurora MySQL 1.x 的数据库集群参数组系列名称仍为 aurora5.6。