调用ConfigureMigrationJob接口配置数据迁移实例。

本接口调用成功后,将自动启动数据迁移任务,您无需手动调用StartMigrationJob接口。

如果数据迁移任务未成功启动,可能是由于预检查失败,您可以调用DescribeMigrationJobStatus接口查询预检查失败的错误提示并修复问题。问题修复后,您需要手动调用StartMigrationJob接口来重启数据迁移任务。

调试

您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。

请求参数

名称 类型 是否必选 示例值 描述
Action String ConfigureMigrationJob

系统规定参数,取值:ConfigureMigrationJob

DestinationEndpoint.InstanceType String RDS

目标库的实例类型,取值:

  • ECS:ECS上的自建数据库。
  • LocalInstance:有公网IP的自建数据库。
  • RDS:阿里云RDS实例。
  • DRDS:阿里云PolarDB-X实例。
  • MongoDB:阿里云MongoDB实例。
  • Redis:阿里云Redis实例。
  • PetaData:阿里云HybridDB for MySQL实例。
  • POLARDB:阿里云PolarDB MySQL、PolarDB PostgreSQL。
  • PolarDB_o:阿里云PolarDB O引擎集群。
  • AnalyticDB:阿里云云原生数据仓库AnalyticDB MySQL 3.0和2.0版本。
  • Greenplum:阿里云云原生数据仓库AnalyticDB PostgreSQL。
MigrationJobId String dtsl3m1213ye7l****

数据迁移实例ID,可以通过调用DescribeMigrationJobs接口查询。

MigrationJobName String MySQL_TO_RDS

迁移任务名称,不超过32个字符。建议配置具有业务意义的名称(无唯一性要求),便于后续识别。

MigrationMode.DataIntialization Boolean true

是否进行全量数据迁移,取值:

  • true:是。
  • false:否。
说明 DTS对全量数据迁移的支持情况因数据库类型不同而有所差异,详情请参见支持的数据库和迁移类型
MigrationMode.DataSynchronization Boolean true

是否进行增量数据迁移,取值:

  • true:是。
  • false:否。
说明 DTS对增量数据迁移的支持情况因数据库类型不同而有所差异,详情请参见支持的数据库和迁移类型
MigrationMode.StructureIntialization Boolean true

是否进行结构迁移,取值:

  • true:是。
  • false:否。
说明 DTS对结构迁移的支持情况因数据库类型不同而有所差异,详情请参见支持的数据库和迁移类型
MigrationObject String [{"DBName":"dtstestdata","TableIncludes":[{"TableName":"customer"}]}]

待迁移的对象,格式为JSON串,且支持一定的正则表达式。

更多相关介绍和示例请参见迁移对象配置说明

SourceEndpoint.InstanceType String RDS

源库的实例类型,取值:

  • RDS:阿里云RDS实例。
  • ECS:ECS上的自建数据库。
  • LocalInstance:有公网IP的自建数据库。
  • Express:通过专线/VPN网关/智能接入网关接入的自建数据库。
  • dg:通过数据库网关DG接入的自建数据库。
  • cen:通过云企业网CEN接入的自建数据库。
  • MongoDB:阿里云MongoDB实例。
  • POLARDB:阿里云PolarDB MySQL、PolarDB PostgreSQL。
  • PolarDB_o:阿里云PolarDB O引擎集群。
RegionId String cn-hangzhou

数据迁移实例所在地域的ID,详情请参见支持的地域列表

说明 与目标库所属的地域ID保持一致。
SourceEndpoint.InstanceID String rm-bp1i99e8l7913****

源库的实例ID。

说明
  • SourceEndpoint.InstanceType取值为RDSECSExpressMongoDBPOLARDBPolarDB_o时,本参数才可用且必须传入对应的实例ID(例如取值为ECS,则本参数传入ECS实例的ID)。
  • SourceEndpoint.InstanceType取值为Express时,本参数传入VPC ID(即专有网络ID)。
SourceEndpoint.EngineName String MySQL

源库的数据库类型,取值:MySQLTiDBSQLServerPostgreSQLOracleMongoDBRedisPOLARDBpolardb_pg

说明DestinationEndpoint.InstanceType取值为RDSPOLARDBECSLocalInstanceExpress时,本参数才可用且必须传入。
SourceEndpoint.Region String cn-hangzhou

源库所属的地域ID。

说明SourceEndpoint.InstanceType取值为LocalInstance时,您可以传入cn-hangzhou或者离自建数据库地物理距离最近的地域ID,详情请参见支持的地域列表
SourceEndpoint.IP String 172.16.88.***

源库的连接地址。

说明SourceEndpoint.InstanceType取值为LocalInstanceExpress时,本参数才可用且必须传入。
SourceEndpoint.Port String 3306

源库的服务端口。

说明SourceEndpoint.InstanceType取值为ECSLocalInstanceExpress时,本参数才可用且必须传入。
SourceEndpoint.OracleSID String testsid

Oracle数据库的SID信息。

说明SourceEndpoint.EngineName取值为Oracle,且Oracle数据库为非RAC实例时,本参数才可用且必须传入。
SourceEndpoint.DatabaseName String dtstestdatabase

待迁移的数据库名称或鉴权数据库名称。

说明
  • SourceEndpoint.EngineName取值为PostgreSQLMongoDB时,本参数才可用且必须传入。
  • SourceEndpoint.EngineName取值为PostgreSQL时,传入待迁移的数据库名称;取值为MongoDB时,传入数据库账号的鉴权数据库名称。
SourceEndpoint.UserName String dtstestaccount

源库的数据库账号。

说明 迁移不同的数据库所需的权限有所差异,详情请参见迁移方案概览中对应的配置案例。
SourceEndpoint.Password String Test123456

源库数据库账号的密码。

SourceEndpoint.OwnerID String 140692647406****

源实例所属的阿里云账号ID。

说明 仅在配置跨阿里云账号的数据迁移时本参数才可用,且必须传入。
SourceEndpoint.Role String ram-for-dts

当源实例与目标实例所属阿里云账号不同时,需传入该参数,来指定源实例的授权角色,以允许目标实例阿里云账号访问源实例的实例信息。

说明 角色所需的权限及授权方式,请参见跨阿里云账号数据迁移或同步时如何配置RAM授权
DestinationEndpoint.InstanceID String rm-bp1r46452ai50****

目标实例ID。

说明DestinationEndpoint.InstanceType取值为RDSECSMongoDBRedisDRDSPetaDataOceanBasePOLARDBPolarDB_oAnalyticDBGreenplum时,本参数才可用且必须传入对应的实例ID(例如取值为ECS,则需要传入ECS实例ID)。
DestinationEndpoint.EngineName String MySQL

目标库的数据库类型。取值:MySQLDRDSSQLServerPostgreSQLPPASMongoDBRedisPOLARDBpolardb_pg

说明DestinationEndpoint.InstanceType取值为RDSPOLARDBECSLocalInstanceExpress时,本参数才可用且必须传入。
DestinationEndpoint.Region String cn-hangzhou

目标库所属的地域ID。

说明DestinationEndpoint.InstanceType取值为LocalInstance时,您可以传入cn-hangzhou或者离自建数据库地物理距离最近的地域ID,详情请参见支持的地域列表
DestinationEndpoint.IP String 172.16.88.***

目标库的连接地址。

说明DestinationEndpoint.InstanceType取值为LocalInstanceExpress时,本参数才可用且必须传入。
DestinationEndpoint.Port String 3306

目标库的服务端口。

说明DestinationEndpoint.InstanceType取值为ECSLocalInstanceExpress时,本参数才可用且必须传入。
DestinationEndpoint.DataBaseName String dtstestdatabase

待迁入的数据库名称或鉴权数据库名称。

说明
  • DestinationEndpoint.EngineName取值为PostgreSQLDRDSMongoDB时,本参数才可用且必须传入。
  • DestinationEndpoint.EngineName取值为PostgreSQLDRDS时,传入待迁移的数据库名称;取值为MongoDB时,传入数据库账号的鉴权数据库名称。
DestinationEndpoint.UserName String dtstestaccount

目标库的数据库账号。

说明 迁移不同的数据库所需的权限有所差异,详情请参见迁移方案概览中对应的配置案例。
DestinationEndpoint.Password String Test123456

目标库数据库账号的密码。

MigrationReserved String { "autoStartModulesAfterConfig": "none", "targetTableMode": 2 }

DTS预留参数,格式为JSON串,您可以传入本参数实现特殊需求(例如是否自动启动预检查)。更多信息,请参见MigrationReserved参数说明

Checkpoint String 111

增量数据迁移的启动位点,格式为Unix时间戳,单位为秒。

AccountId String 12323344****

阿里云主账号ID,无需设置,该参数即将下线。

DestinationEndpoint.OracleSID String testsid

Oracle数据库的SID信息。

说明DestinationEndpoint.EngineName取值为Oracle,且Oracle数据库为非RAC实例时,本参数才可用且必须传入。

返回数据

名称 类型 示例值 描述
ErrCode String InternalError

调用出错时返回的错误码。

ErrMessage String The request processing has failed due to some unknown error.

调用错误时返回对应的错误信息。

RequestId String 40E35BD9-002E-4D63-9BE5-FBA48833****

请求ID。

Success String true

请求是否成功。

示例

请求示例

http(s)://dts.aliyuncs.com/?Action=ConfigureMigrationJob
&DestinationEndpoint.InstanceType=RDS
&MigrationJobId=dtsl3m1213ye7l****
&MigrationJobName=MySQL_TO_RDS
&MigrationMode.DataIntialization=true
&MigrationMode.DataSynchronization=true
&MigrationMode.StructureIntialization=true
&MigrationObject=[{"DBName":"dtstestdata","TableIncludes":[{"TableName":"customer"}]}]
&SourceEndpoint.InstanceType=RDS
&<公共请求参数>

正常返回示例

XML格式

<ConfigureMigrationJobResponse>
      <RequestId>40E35BD9-002E-4D63-9BE5-FBA48833****</RequestId>
      <Success>true</Success>
</ConfigureMigrationJobResponse>

JSON格式

{
	"RequestId": "40E35BD9-002E-4D63-9BE5-FBA48833****",
	"Success": true
}

错误码

访问错误中心查看更多错误码。