調用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
}

錯誤碼

訪問錯誤中心查看更多錯誤碼。