删除数据库后,Terraform 尝试读取 SQL 用户

Ara*_*ash 3 terraform terraform-provider-gcp

在我们不小心执行了一个过时的分支后,我们的 terraform 状态进入了一个损坏的状态。

两个数据库被删除,并且由于 GCP 不允许您在删除后为数据库使用相同的名称,因此 terraform 无法重新创建数据库,因此退出。

问题是,terraform认为数据库是他们的,并试图读取其用户:

在实例“xxx”中读取或编辑 SQL 用户“xxx”时出错:googleapi:错误 400:无效请求:无效请求,因为实例未运行。,无效

实例根本不存在!

我试图污染数据库和用户,但我仍然遇到完全相同的错误。

有谁知道如何解决这一问题?我不能破坏和重建环境。

T.H*_*.H. 11

terraform state rm可用于从应该解决此问题的状态文件中删除不再存在的数据库。详情见https://www.terraform.io/docs/commands/state/rm.html

  • 谢谢这有帮助!另外,为了获取需要删除的确切地址名称,请使用:`terraform state list` (2认同)