全部產品
Search
文件中心

Tablestore:解除綁定全域表

更新時間:Jan 09, 2026

本文介紹如何通過 Java SDK 為全域表移除一個或多個分布位置。

注意事項

  • 解除綁定過程僅移除副本表與全域表的關聯關係,副本表及其資料將保留。後續可通過DeleteTable介面單獨刪除副本表。

  • 此操作只是發起解除綁定請求,完成解除綁定需要一段時間,請耐心等待,可通過查詢全域表資訊擷取全域表的狀態確認是否完成解除綁定。當全域表狀態重新返回為active時表示解除綁定成功。

前提條件

初始化用戶端

方法說明

public UnbindGlobalTableResponse unbindGlobalTable(UnbindGlobalTableRequest request) throws TableStoreException, ClientException

UnbindGlobalTableRequest參數說明

  • globalTableId(必選)String:全域表ID。

    說明

    如果未記錄全域表ID,可通過調用DescribeTable操作查詢表副本的詳細資料。當表副本屬於全域表時,DescribeTable操作的返回結果中會包含對應全域表ID。

  • globalTableName(必選)String:全域表名稱,必須與基礎資料表名稱相同。

  • Removals(必選)List<Removal>:要移除的分布位置列表,包含以下參數:

    名稱

    類型

    說明

    regionId(必選)

    String

    地區ID。

    instanceName(必選)

    String

    執行個體名稱。

樣本

private static void unbindGlobalTableExample(SyncClient client) {
    // 構造請求
    UnbindGlobalTableRequest request = new UnbindGlobalTableRequest(
                // 全域表 ID
                "gt-ee1b54db-f5d9-43f3-ad36-ec44********",
                // 全域表名稱
                "my-global-table"
    );
                
    // 構建要移除的副本列表(Removals)
    List<GlobalTableTypes.Removal> removals = new ArrayList<>();

    // 樣本:計劃移除華東1(杭州)地區的副本
    GlobalTableTypes.Removal hangzhouRemoval = new GlobalTableTypes.Removal(
                // 副本所在地區 ID
                "cn-hangzhou",
                // 副本所屬執行個體名稱
                "instance-replica-hz"
    );

    // 樣本:計劃移除華東2(上海)地區的副本
    GlobalTableTypes.Removal shanghaiRemoval = new GlobalTableTypes.Removal(
                // 副本所在地區 ID
                "cn-shanghai",
                // 副本所屬執行個體名稱
                "instance-replica-sh"
    );
    
    removals.add(hangzhouRemoval);
    removals.add(shanghaiRemoval);
    request.setRemovals(removals);

    // 發起請求
    UnbindGlobalTableResponse response = client.unbindGlobalTable(request);
    System.out.println("Unbind start. Request ID: " + response.getRequestId());
}