Configures a data migration task.
After you call this operation to configure a data migration task, the task will be automatically started. You do not need to call the StartMigrationJob operation to start the task.
A data migration task may fail to be started due to precheck failures. You can call the DescribeMigrationJobStatus operation to query the error messages about precheck failures. Then, you can fix the issue based on the error messages. After you fix the issue, you must call the StartMigrationJob operation to restart the data migration task.
Debugging
Request parameters
Parameter | Type | Required | Example | Description |
---|---|---|---|---|
Action | String | Yes | ConfigureMigrationJob |
The operation that you want to perform. Set the value to ConfigureMigrationJob. |
DestinationEndpoint.InstanceType | String | Yes | RDS |
The instance type of the destination database. Valid values:
|
MigrationJobId | String | Yes | dtsl3m1213ye7l**** |
The ID of the data migration instance. You can call the DescribeMigrationJobs operation to query the instance ID. |
MigrationJobName | String | Yes | MySQL_TO_RDS |
The name of the data migration task. The name can be up to 32 characters in length. We recommend that you specify an informative name to identify the task. You do not need to use a unique task name. |
MigrationMode.DataIntialization | Boolean | Yes | true |
Specifies whether to perform full data migration. Valid values:
Note For more information about databases that support full data migration, see Supported databases and migration types.
|
MigrationMode.DataSynchronization | Boolean | Yes | true |
Specifies whether to perform incremental data migration. Valid values:
Note For more information about databases that support incremental data migration, see
Supported databases and migration types.
|
MigrationMode.StructureIntialization | Boolean | Yes | true |
Specifies whether to perform schema migration. Valid values:
Note For more information about databases that support schema migration, see Supported databases and migration types.
|
MigrationObject | String | Yes | [{"DBName":"dtstestdata","TableIncludes":[{"TableName":"customer"}]}] |
The objects that you want to migrate. The value is a JSON string and can contain regular expressions. For more information, see MigrationObject. |
SourceEndpoint.InstanceType | String | Yes | RDS |
The instance type of the source database. Valid values:
|
RegionId | String | No | cn-hangzhou |
The ID of the region where the data migration instance resides. For more information, see List of supported regions. Note The region ID of the data migration instance is the same as that of the destination
database.
|
SourceEndpoint.InstanceID | String | No | rm-bp1i99e8l7913**** |
The ID of the instance that hosts the source database. Note
|
SourceEndpoint.EngineName | String | No | MySQL |
The engine type of the source database. Valid values: MySQL, TiDB, SQLServer, PostgreSQL, Oracle, MongoDB, Redis, POLARDB, and polardb_pg. Note You must specify the engine type only if the DestinationEndpoint.InstanceType parameter is set to RDS, POLARDB, ECS, LocalInstance, or Express.
|
SourceEndpoint.Region | String | No | cn-hangzhou |
The region ID of the source database. Note If the SourceEndpoint.InstanceType parameter is set to LocalInstance, you can enter cn-hangzhou or the ID of the region closest to the self-managed database. For more information,
see List of supported regions.
|
SourceEndpoint.IP | String | No | 172.16.88.*** |
The endpoint of the source database. Note You must specify the endpoint only if the SourceEndpoint.InstanceType parameter is set to LocalInstance or Express.
|
SourceEndpoint.Port | String | No | 3306 |
The service port number of the source database. Note You must specify the service port number only if the SourceEndpoint.InstanceType parameter is set to ECS, LocalInstance, or Express.
|
SourceEndpoint.OracleSID | String | No | testsid |
The system ID (SID) of the Oracle database. Note You must specify this parameter only if the SourceEndpoint.EngineName parameter is set to Oracle and the Oracle database is deployed in a non-RAC architecture.
|
SourceEndpoint.DatabaseName | String | No | dtstestdatabase |
The name of the source database or the authentication database. Note
|
SourceEndpoint.UserName | String | No | dtstestaccount |
The database account of the source database. Note The permissions that are required for database accounts vary with the migration scenario.
For more information, see Overview of data migration scenarios.
|
SourceEndpoint.Password | String | No | Test123456 |
The password of the source database account. |
SourceEndpoint.OwnerID | String | No | 140692647406**** |
The ID of the Alibaba Cloud account to which the source instance belongs. Note You must specify this parameter only when you configure data migration across different
Alibaba Cloud accounts.
|
SourceEndpoint.Role | String | No | ram-for-dts |
The authorized RAM role of the source instance. You must specify the RAM role only if the source instance and the destination instance belong to different Alibaba Cloud accounts. You can use the RAM role to allow the Alibaba Cloud account that owns the destination instance to access the source instance. Note For information about the permissions and authorization methods of the RAM role, see
Configure RAM authorization for cross-account data migration and synchronization.
|
DestinationEndpoint.InstanceID | String | No | rm-bp1r46452ai50**** |
The ID of the instance that hosts the destination database. Note You must specify the instance ID only if the DestinationEndpoint.InstanceType parameter is set to RDS, ECS, MongoDB, Redis, DRDS, PetaData, OceanBase, POLARDB, PolarDB_o, AnalyticDB, or Greenplum. For example, if the DestinationEndpoint.InstanceType parameter is set to ECS, you must specify the ID of the ECS instance.
|
DestinationEndpoint.EngineName | String | No | MySQL |
The engine type of the destination database. Valid values: MySQL, DRDS, SQLServer, PostgreSQL, PPAS, MongoDB, Redis, POLARDB, and polardb_pg. Note You must specify the engine type only if the DestinationEndpoint.InstanceType parameter is set to RDS, POLARDB, ECS, LocalInstance, or Express.
|
DestinationEndpoint.Region | String | No | cn-hangzhou |
The region ID of the destination database. Note If the DestinationEndpoint.InstanceType parameter is set to LocalInstance, you can enter cn-hangzhou or the ID of the region closest to the self-managed database. For more information,
see List of supported regions.
|
DestinationEndpoint.IP | String | No | 172.16.88.*** |
The endpoint of the destination database. Note You must specify the endpoint only if the DestinationEndpoint.InstanceType parameter is set to LocalInstance or Express.
|
DestinationEndpoint.Port | String | No | 3306 |
The service port number of the destination database. Note You must specify the service port number only if the DestinationEndpoint.InstanceType parameter is set to ECS, LocalInstance, or Express.
|
DestinationEndpoint.DataBaseName | String | No | dtstestdatabase |
The name of the destination database or the authentication database. Note
|
DestinationEndpoint.UserName | String | No | dtstestaccount |
The database account of the destination database. Note The permissions that are required for database accounts vary with the migration scenario.
For more information, see Overview of data migration scenarios.
|
DestinationEndpoint.Password | String | No | Test123456 |
The password of the destination database account. |
MigrationReserved | String | No | { "autoStartModulesAfterConfig": "none", "targetTableMode": 2 } |
The reserved parameter of DTS. The value is a JSON string. You can specify this parameter to meet special requirements, for example, whether to automatically start a precheck. For more information, see MigrationReserved. |
Checkpoint | String | No | 111 |
The start offset of incremental data migration. The value is a UNIX timestamp. Unit: seconds. |
AccountId | String | No | 12323344**** |
The ID of the Alibaba Cloud account. You do not need to specify this parameter because this parameter will be removed in the future. |
DestinationEndpoint.OracleSID | String | No | testsid |
The SID of the Oracle database. Note You must specify this parameter only if the DestinationEndpoint.EngineName parameter is set to Oracle and the Oracle database is deployed in a non-RAC architecture.
|
Response parameters
Parameter | Type | Example | Description |
---|---|---|---|
ErrCode | String | InternalError |
The error code returned if the call failed. |
ErrMessage | String | The request processing has failed due to some unknown error. |
The error message returned if the call failed. |
RequestId | String | 40E35BD9-002E-4D63-9BE5-FBA48833**** |
The ID of the request. |
Success | String | true |
Indicates whether the call was successful. |
Examples
Sample requests
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
&<Common request parameters>
Sample success responses
XML
format
<ConfigureMigrationJobResponse>
<RequestId>40E35BD9-002E-4D63-9BE5-FBA48833****</RequestId>
<Success>true</Success>
</ConfigureMigrationJobResponse>
JSON
format
{
"RequestId": "40E35BD9-002E-4D63-9BE5-FBA48833****",
"Success": true
}
Error codes
For a list of error codes, visit the API Error Center.