更新时间:2026-05-15 GMT+08:00
分享

分片变更V3

功能介绍

分片变更

URI

POST /v3/{project_id}/instances/{instance_id}/databases/{db_name}/migration

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

租户在某一region下的project ID。

instance_id

String

DDM实例ID

db_name

String

逻辑库名称

请求参数

表2 请求Header参数

参数

是否必选

参数类型

描述

X-Auth-Token

String

用户Token。

通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。

表3 请求Body参数

参数

是否必选

参数类型

描述

data_nodes

Array of DataNode objects

关联的后端DN信息。

switch_route_begin_time

String

自动切换开始时间(hh:mm:ss格式,例如17:00:00),开始时间必须小于结束时间,且间隔不能小于60分钟。建议选择业务低峰期。

switch_route_end_time

String

自动切换结束时间(hh:mm:ss格式,例如18:00:00),开始时间必须小于结束时间,且间隔不能小于60分钟。建议选择业务低峰期。

new_shard_number

String

变更后的分片数量。

变更后的分片数或数据节点数要比变更前多。单实例最大分片数:64。

is_exclusive

Boolean

是否独占节点,默认为false。

  • 独占节点:true
  • 非独占节点:false
  • 独占式将从默认读写组中随机选择正常节点来变更,选择的节点资源全部用于分片变更,可以提高分片变更的性能。如果您担心节点独占影响您的业务,可以先进行计算节点扩容。
  • 选择独占式变更模式时,默认组要开启负载均衡,且节点数大于1个。
表4 DataNode

参数

是否必选

参数类型

描述

id

String

DN实例ID。

user

String

数据库用户。

  • 数据库账号所需权限:SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, RELOAD, PROCESS, REFERENCES, INDEX, ALTER, SHOW DATABASES, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, TRIGGER WITH GRANT OPTION。

password

String

数据库密码。

响应参数

状态码:202

表5 响应Body参数

参数

参数类型

描述

job_id

String

任务id

状态码:400

表6 响应Body参数

参数

参数类型

描述

error_code

String

错误码。

error_msg

String

错误消息。

状态码:500

表7 响应Body参数

参数

参数类型

描述

error_code

String

错误码。

error_msg

String

错误消息。

请求示例

{
  "new_shard_number" : 9,
  "data_nodes" : [ {
    "id" : "7edae0250ebc464897bd92b8d3e8b769in01",
    "user" : "root",
    "password" : "Pa**********4"
  } ]
}

响应示例

状态码:202
{
  "job_id":"xxxxxxxx-5d7e-4e1a-aeb4-9b1e6d0a4999"
}

状态码:400

bad request

{
  "error_msg" : "Parameter error.",
  "error_code" : "DBS.280001"
}

状态码:500

server error

{
  "error_msg" : "Parameter error.",
  "error_code" : "DBS.280001"
}

状态码

状态码

描述

202

ok

400

bad request

500

server error

错误码

请参见错误码

相关文档