更新时间:2023-11-15 GMT+08:00

批量数据库对象选择

功能介绍

迁移之前,选择需要迁移的数据库或者表。

调试

您可以在API Explorer中调试该接口,支持自动认证鉴权。API Explorer可以自动生成SDK代码示例,并提供SDK代码示例调试功能。

接口约束

  • 仅实时迁移、实时同步支持对象选择。
  • 任务创建成功之后,任务状态为CONFIGURATION,并且与源库和目标库测试连接通过、修改任务接口调用成功后才能调用。
  • 为保证接口调用性能,建议批量调用数量不超过10个。

URI

PUT /v3/{project_id}/jobs/batch-select-objects

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

租户在某一Region下的Project ID。

获取方法请参见获取项目ID

请求参数

表2 请求Header参数

参数

是否必选

参数类型

描述

Content-Type

String

指定类型为application/json。

缺省值:application/json

X-Auth-Token

String

从IAM服务获取的用户Token。

X-Language

String

请求语言类型。

缺省值:en-us

取值:

  • en-us
  • zh-cn
表3 请求Body参数

参数

是否必选

参数类型

描述

jobs

Array of objects

批量更新数据库对象请求任务ID列表。

详情请参见表4

表4 jobs字段数据结构说明

参数

是否必选

参数类型

描述

job_id

String

任务ID。

selected

Boolean

是否进行对象选择,不填默认为否。

是:自定义迁移对象。

否:全部迁移。

sync_database

Boolean

是否库级同步。

job

Array of objects

数据对象选择信息,selected为true时必填。

详情请参见表5

表5 job字段数据结构说明

参数

是否必选

参数类型

描述

id

String

object_type为database时,为库名;object_type为table或者view时,字段值参考示例。

parent_id

String

object_type为table或view时需要填写,为库名。

object_type

String

类型。取值:

  • database
  • table
  • schema
  • view

object_name

String

数据库对象名称,库名、表名、视图名。

select

String

是否选中,值为true会进行迁移,false该数据库对象不会迁移,partial为迁移库下面的部分表,不填默认为false。

object_alias_name

String

别名,映射的新名称,仅支持同步任务使用。

响应参数

状态码: 202

表6 响应Body参数

参数

参数类型

描述

all_counts

Long

总数。

results

Array of objects

批量对象选择响应列表。

详情请参见表7

表7 results字段数据结构说明

参数

参数类型

描述

job_id

String

任务ID。

status

Boolean

选择对象任务成功标志。

error_code

String

错误码。

error_msg

String

错误信息。

请求示例

  • 指定部分库、表对象进行迁移
    https://{endpoint}/v3/054ba152d480d55b2f5dc0069e7ddef0/jobs/batch-select-objects
    
    {
      "jobs" : [ {
        "job" : [ {
          "id" : "fastunit",
          "parent_id" : null,
          "object_name" : "fastunit",
          "object_type" : "database",
          "select" : "partial",
          "object_alias_name" : null
        }, {
          "id" : "fastunit-*-*-coll",
          "parent_id" : "fastunit",
          "object_name" : "coll",
          "object_type" : "table",
          "select" : "true",
          "object_alias_name" : null
        }, {
          "id" : "ycy1",
          "parent_id" : null,
          "object_name" : "ycy1",
          "object_type" : "database",
          "select" : "partial",
          "object_alias_name" : null
        }, {
          "id" : "ycy1-*-*-coll",
          "parent_id" : "ycy1",
          "object_name" : "coll",
          "object_type" : "table",
          "select" : "true",
          "object_alias_name" : null
        }, {
          "id" : "ycy1-*-*-collcount",
          "parent_id" : "ycy1",
          "object_name" : "collcount",
          "object_type" : "table",
          "select" : "true",
          "object_alias_name" : null
        } ],
        "job_id" : "57fd2692-0ebe-4714-9b59-fe7aa65djb15",
        "selected" : true
      } ]
    }
  • 选择全部对象进行迁移
    https://{endpoint}/v3/054ba152d480d55b2f5dc0069e7ddef0/jobs/batch-select-objects
    
    {
      "jobs" : [ {
        "job" : [ ],
        "job_id" : "e59f5eef-2bcc-4461-b9ac-10aded44jb15",
        "selected" : false
      } ]
    }

响应示例

状态码: 202

Accepted

{
	"all_counts": 1,
	"results": [{
		"job_id": "4d700f6f-9a17-47e0-a7d6-1bc2155jb101",
		"status": true
	}]
}

状态码

状态码

描述

202

Accepted

400

Bad Request

错误码

请参见错误码