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

如何将SQLMI故障转移组导入Terraform进行管理?

如何将SQLMI故障转移组导入Terraform管理?

可以将手动创建的Azure SQL托管实例(SQLMI)故障转移组导入Terraform管理,正确的导入方式及错误原因解析如下:

正确的导入命令格式

故障转移组的导入ID必须包含主、副实例所在的两个区域,通过locations参数拼接在资源路径后,格式示例:

terraform import <Terraform资源地址> '/subscriptions/<订阅ID>/resourceGroups/<资源组名>/providers/Microsoft.Sql/managedInstances/<托管实例名>/instanceFailoverGroups/<故障转移组名>?locations=<主区域>,<副区域>'

针对你的场景,替换实际副区域后的正确命令:

terraform import 'module.sql_mi["eastus"].azurerm_mssql_managed_instance_failover_group.failovergroup[0]' '/subscriptions/****/resourceGroups/rg-pro-eastus/providers/Microsoft.Sql/managedInstances/sqlmi-pro-001/instanceFailoverGroups/fog-eastus?locations=eastus,westus'

之前命令的错误原因

  • 仅指定单个区域:故障转移组是跨区域资源,locations参数必须同时包含主、副实例的区域,单个区域会触发"ID was missing the locations element"错误。
  • 未添加locations参数:Terraform AzureRM provider要求该资源的导入ID必须携带此参数,缺失会直接报错。
  • 路径截断:第三个命令的资源路径不完整,导致Terraform无法正确解析资源ID结构。

前置注意事项

导入前需确保Terraform代码中已定义azurerm_mssql_managed_instance_failover_group资源块,且资源的名称、关联托管实例、区域等参数与实际手动创建的故障转移组完全匹配,避免导入后出现状态不一致问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.21 17:21:04