1. 接口描述
接口请求域名: dts.tencentcloudapi.com 。
本接口(CreateMigrateJob)用于创建数据迁移任务。
如果是金融区链路, 请使用域名: dts.ap-shenzhen-fsi.tencentcloudapi.com
默认接口请求频率限制:20次/秒。
推荐使用 API Explorer
点击调试
API Explorer 提供了在线调用、签名验证、SDK 代码生成和快速检索接口等能力。您可查看每次调用的请求内容和返回结果以及自动生成 SDK 调用示例。
2. 输入参数
以下请求参数列表仅列出了接口请求参数和部分公共参数,完整公共参数列表见 公共请求参数。
参数名称 | 必选 | 类型 | 描述 |
---|---|---|---|
Action | 是 | String | 公共参数,本接口取值:CreateMigrateJob。 |
Version | 是 | String | 公共参数,本接口取值:2018-03-30。 |
Region | 是 | String | 公共参数,详见产品支持的 地域列表。 |
JobName | 是 | String | 数据迁移任务名称 示例值:usertest // DTS任务名称 |
MigrateOption | 是 | MigrateOption | 迁移任务配置选项 |
SrcDatabaseType | 是 | String | 源实例数据库类型,目前支持:mysql,redis,mongodb,postgresql,mariadb,percona,sqlserver 不同地域数据库类型的具体支持情况,请参考控制台创建迁移页面。 示例值:mysql // 源实例是mysql |
SrcAccessType | 是 | String | 源实例接入类型,值包括:extranet(外网),cvm(CVM自建实例),dcg(专线接入的实例),vpncloud(云VPN接入的实例),cdb(腾讯云数据库实例),ccn(云联网实例) 示例值:extranet // 公网迁移 |
SrcInfo | 是 | SrcInfo | 源实例信息,具体内容跟迁移任务类型相关 |
DstDatabaseType | 是 | String | 目标实例数据库类型,目前支持:mysql,redis,mongodb,postgresql,mariadb,percona,sqlserver,cynosdbmysql。不同地域数据库类型的具体支持情况,请参考控制台创建迁移页面。 示例值:mysql // 目标实例mysql |
DstAccessType | 是 | String | 目标实例接入类型,目前支持:cdb(腾讯云数据库实例) 示例值:cdb // 目标实例是腾讯云mysql |
DstInfo | 是 | DstInfo | 目标实例信息 |
DatabaseInfo | 否 | String | 需要迁移的源数据库表信息,用json格式的字符串描述。当MigrateOption.MigrateObject配置为2(指定库表迁移)时必填。 对于database-table两级结构的数据库: [{"Database":"db1","Table":["table1","table2"]},{"Database":"db2"}] 对于database-schema-table三级结构: [{"Database":"db1","Schema":"s1","Table":["table1","table2"]},{"Database":"db1","Schema":"s2","Table":["table1","table2"]},{"Database":"db2","Schema":"s1","Table":["table1","table2"]},{"Database":"db3"},{"Database":"db4","Schema":"s1"}] |
Tags.N | 否 | Array of TagItem | 迁移实例的tag |
SrcNodeType | 否 | String | 源实例类型: ""或者"simple":主从节点,"cluster": 集群节点 示例值:cluster |
SrcInfoMulti.N | 否 | Array of SrcInfo | 源实例信息,具体内容跟迁移任务类型相关 |
3. 输出参数
参数名称 | 类型 | 描述 |
---|---|---|
JobId | String | 数据迁移任务ID 示例值:dts-1kl0iy0v |
RequestId | String | 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 |
4. 示例
示例1 创建专线数据迁移任务
将用户通过专线接入的mysql实例, 全量+增量迁移迁移到腾讯云上海地域的cdb-d0dqi8nv实例上. 其中源实例的接入地域为广州.
输入示例
POST / HTTP/1.1
Host: dts.tencentcloudapi.com
Content-Type: application/json
X-TC-Action: CreateMigrateJob
<公共请求参数>
{
"JobName": "设置为一个方便辨识的名称",
"SrcDatabaseType": "mysql",
"SrcAccessType": "dcg",
"SrcInfo": {
"Supplier": "others",
"UniqDcgId": "dcg-cyrjcc09",
"VpcId": "vpc-72jblfaa",
"SubnetId": "subnet-7raec42a",
"Ip": "192.168.120.136",
"Region": "ap-guangzhou",
"User": "root",
"Password": "yourPassword",
"Port": 3306
},
"DstDatabaseType": "mysql",
"DstAccessType": "cdb",
"DstInfo": {
"InstanceId": "cdb-d0dqi8nv",
"Region": "ap-shanghai",
"ReadOnly": 0,
"User": "root",
"Password": "yourPassword"
},
"DatabaseInfo": "[{\"Database\":\"test\",\"Table\":[\"user\",\"log\"]}]",
"Tags": [
{
"TagKey": "负责人",
"TagValue": "bob"
}
],
"MigrateOption": {
"ExternParams": "{}",
"MigrateObject": 1,
"RunMode": 1,
"ExpectTime": "2020-09-22 00:00:00",
"ConsistencyType": 2,
"MigrateType": 2,
"IsOverrideRoot": 0
}
}
输出示例
{
"Response": {
"JobId": "dts-o3s1vxsp",
"RequestId": "915bc42a-714f-4faa-915b-a51cc09f5714"
}
}
示例2 创建云数据库迁移任务
从腾讯云mysql实例结构迁移到腾讯云另一个mysql实例,选择部分库表做,不做数据一致性检查。
输入示例
POST / HTTP/1.1
Host: dts.tencentcloudapi.com
Content-Type: application/json
X-TC-Action: CreateMigrateJob
<公共请求参数>
{
"JobName": "设置为一个方便辨识的名称",
"SrcDatabaseType": "mysql",
"SrcAccessType": "cdb",
"SrcInfo": {
"Supplier": "others",
"InstanceId": "cdb-ieow93923",
"User": "root",
"Password": "yourPassword"
},
"DstDatabaseType": "mysql",
"DstAccessType": "cdb",
"DstInfo": {
"InstanceId": "cdb-e78e0nnv",
"Region": "ap-shanghai",
"ReadOnly": 0,
"User": "root",
"Password": "yourPassword"
},
"DatabaseInfo": "[]",
"Tags": [
{
"TagKey": "负责人",
"TagValue": "bob"
}
],
"MigrateOption": {
"ExternParams": "{}",
"MigrateObject": 1,
"RunMode": 1,
"ExpectTime": "2020-09-22 00:00:00",
"ConsistencyType": 5,
"MigrateType": 2,
"IsOverrideRoot": 0
}
}
输出示例
{
"Response": {
"JobId": "dts-46i7easd",
"RequestId": "bc94c57b-9d69-11e9-84cb-256e968056b0"
}
}
示例3 创建公网数据迁移任务
将用户的mysql公网实例数据, 采用全量方式迁移到腾讯云上海地域的cdb-e78e0nnv实例上. 其中源实例的接入地域为广州. 数据一致性检查做全量检测.
输入示例
POST / HTTP/1.1
Host: dts.tencentcloudapi.com
Content-Type: application/json
X-TC-Action: CreateMigrateJob
<公共请求参数>
{
"JobName": "设置为一个方便辨识的名称",
"SrcDatabaseType": "mysql",
"SrcAccessType": "extranet",
"SrcInfo": {
"Supplier": "others",
"Ip": "14.17.22.36",
"Region": "ap-guangzhou",
"User": "root",
"Password": "yourPassword",
"Port": 3306
},
"DstDatabaseType": "mysql",
"DstAccessType": "cdb",
"DstInfo": {
"InstanceId": "cdb-e78e0nnv",
"Region": "ap-shanghai",
"ReadOnly": 0,
"User": "root",
"Password": "yourPassword"
},
"DatabaseInfo": "[]",
"Tags": [
{
"TagKey": "负责人",
"TagValue": "bob"
}
],
"MigrateOption": {
"ExternParams": "{}",
"MigrateObject": 1,
"RunMode": 1,
"ExpectTime": "2020-09-22 00:00:00",
"ConsistencyType": 2,
"MigrateType": 2,
"IsOverrideRoot": 0
}
}
输出示例
{
"Response": {
"JobId": "dts-1kl0iy0v",
"RequestId": "2201c42a-714f-4faa-915b-a51cc09f5cec"
}
}
5. 开发者资源
腾讯云 API 平台
腾讯云 API 平台 是综合 API 文档、错误码、API Explorer 及 SDK 等资源的统一查询平台,方便您从同一入口查询及使用腾讯云提供的所有 API 服务。
API Inspector
用户可通过 API Inspector 查看控制台每一步操作关联的 API 调用情况,并自动生成各语言版本的 API 代码,也可前往 API Explorer 进行在线调试。
SDK
云 API 3.0 提供了配套的开发工具集(SDK),支持多种编程语言,能更方便的调用 API。
- Tencent Cloud SDK 3.0 for Python: GitHub Gitee
- Tencent Cloud SDK 3.0 for Java: GitHub Gitee
- Tencent Cloud SDK 3.0 for PHP: GitHub Gitee
- Tencent Cloud SDK 3.0 for Go: GitHub Gitee
- Tencent Cloud SDK 3.0 for Node.js: GitHub Gitee
- Tencent Cloud SDK 3.0 for .NET: GitHub Gitee
- Tencent Cloud SDK 3.0 for C++: GitHub Gitee
- Tencent Cloud SDK 3.0 for Ruby: GitHub Gitee
命令行工具
6. 错误码
以下仅列出了接口业务逻辑相关的错误码,其他错误码详见 公共错误码。
错误码 | 描述 |
---|---|
AuthFailure.UnauthorizedOperationError | 鉴权失败,当前用户不允许执行该操作。 |
FailedOperation.NotAllowOperation | 禁止该操作。 |
InternalError.DatabaseError | 迁移平台数据库访问失败。 |
InternalError.DuplicateJob | 迁移任务冲突。 |
InternalError.InternalErrorError | 内部错误。 |
InternalError.InternalHttpServerError | http请求访问出错。 |
InternalError.InternalInnerCommonError | 内部组件访问错误。 |
InternalError.ProtocolError | 通信协议错误。 |
InternalError.UnknownError | 未知的内部错误。 |
InvalidParameter | 参数错误。 |
InvalidParameter.BizInvalidParameterValueError | 参数值错误。 |
InvalidParameter.InvalidParameterError | 参数无效。 |
InvalidParameterValue.BizInvalidParameterValueError | 业务参数错误。 |
InvalidParameterValue.DataConvertError | 数据转换错误。 |
InvalidParameterValue.InvalidParameterValueError | 非法参数。 |
LimitExceeded.MaxUnusedJobs | 闲置迁移任务数目超过限制。 |
OperationDenied | 操作被拒绝。 |
OperationDenied.NotEnoughMoneyError | 用户余额不足。 |
OperationDenied.OperationDeniedError | 操作被拒绝。 |
UnauthorizedOperation.NotEnoughPrivileges | 认证失败,没有足够权限。 |