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

如何在Terraform中导入包含副本的已有DynamoDB表?

解决DynamoDB副本导入问题的步骤

当你导入带副本的DynamoDB表时,主表和嵌套的replica资源需要分别导入,因为Terraform将副本视为独立的子资源。按以下步骤操作即可避免副本被删除重建:

  1. 确认主表已导入
    你已执行过主表导入命令,先验证主表是否在Terraform状态中:

    terraform state show aws_dynamodb_table.GameScores
    

    此时输出不会包含replica相关信息,属于正常现象。

  2. 单独导入副本资源
    DynamoDB副本的导入格式为主资源标识.replica[索引],索引从0开始(你的配置中仅一个副本,所以用[0]),导入ID格式为主表名称:副本区域。执行命令:

    terraform import aws_dynamodb_table.GameScores.replica[0] GameScores:us-east-2
    
  3. 验证副本已纳入状态管理
    再次查看状态信息,确认replica已存在:

    terraform state show aws_dynamodb_table.GameScores
    

    此时输出应包含你配置中replica块的所有属性。

  4. 确认配置与基础设施一致
    执行terraform plan,如果输出显示No changes. Your infrastructure matches the configuration.,说明副本已被正确管理,不会被删除重建。

额外说明

  • 若配置中有多个副本,需按索引依次导入(如第二个副本用replica[1]),每个副本的导入ID格式均为主表名:对应区域。
  • 确保导入时的区域与Terraform配置中的region值完全一致,避免因区域不匹配导致的变更。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.11 01:20:04