You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用Terraform关闭AWS RDS删除保护以删除对应数据库实例

问题原因

你之前两次报错的核心原因是:修改deletion_protection = false的操作和销毁实例的操作被Terraform放在同一个执行计划中,Terraform会优先执行销毁动作,此时实例的删除保护还未被修改,因此触发了权限拦截。

解决步骤
  • 第一步:恢复RDS资源配置:如果你之前修改deletion_protection参数的同时,已经把RDS实例的Terraform资源块从配置中删除了,先把资源块加回来,保持和创建时的配置完全一致,仅修改deletion_protection = false,暂不删除资源块,也不要修改其他参数。
  • 第二步:执行terraform plan,确认输出中仅包含更新RDS实例deletion_protection参数的变更,没有任何销毁RDS实例的操作,避免同时触发参数更新和实例删除。
  • 第三步:执行terraform apply,等待参数更新完成,此时AWS RDS实例的删除保护已经被正式关闭。
  • 第四步:执行删除操作:
    • 如果你需要删除整个Terraform管理的资源栈,直接执行terraform destroy即可
    • 如果你只需要删除这一个RDS实例,可以将RDS资源块从配置中删除后执行terraform apply,也可以直接执行定向销毁命令:terraform destroy --target aws_db_instance.<你的RDS资源名>
备选方案

如果上述操作依然报错,可以先通过AWS CLI手动关闭实例删除保护,再同步Terraform状态后删除:

  1. 执行CLI命令关闭删除保护:
aws rds modify-db-instance --db-instance-identifier awsworkerdb-green --no-deletion-protection --apply-immediately
  1. 执行terraform refresh,将远端资源的最新状态同步到本地Terraform状态文件
  2. 再执行对应的销毁操作即可

注意:如果你的RDS配置中没有设置skip_final_snapshot = true,删除前需要补充该参数,或者提前配置好final_snapshot_identifier,否则删除时还会因为需要创建最终快照触发报错。

内容的提问来源于stack exchange,提问作者Uddip

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 20:36:03