ALIYUN::DTS::MigrationJob类型用于购买一个数据库迁移实例,同时可以配置数据迁移任务。
建议使用新版资源 ALIYUN::DTS::Instance(用于购买DTS实例)和 ALIYUN::DTS::MigrationJob2(配置数据迁移任务)。
语法
{
"Type": "ALIYUN::DTS::MigrationJob",
"Properties": {
"MigrationJobClass": String,
"SourceEndpoint": Map,
"MigrationJobName": String,
"MigrationMode": Map,
"DestinationEndpoint": Map,
"MigrationObject": List
}
}
属性
属性名称 | 类型 | 必须 | 允许更新 | 描述 | 约束 |
属性名称 | 类型 | 必须 | 允许更新 | 描述 | 约束 |
MigrationJobClass | String | 是 | 否 | 迁移实例规格 | 取值:
各个规格的测试性能请参见数据迁移链路规格说明。 |
SourceEndpoint | Map | 否 | 是 | 源实例 | 无 |
MigrationJobName | String | 否 | 是 | 迁移任务名称 | 无 |
MigrationMode | Map | 否 | 是 | 迁移任务模式 | 无 |
DestinationEndpoint | Map | 否 | 是 | 目标实例 | 无 |
MigrationObject | List | 否 | 是 | 需要迁移的对象 | 无 |
SourceEndpoint语法
"SourceEndpoint": {
"UserName": String,
"OracleSID": String,
"InstanceID": String,
"IP": String,
"Region": String,
"InstanceType": String,
"Role": String,
"DatabaseName": String,
"OwnerID": String,
"EngineName": String,
"Password": String,
"Port": String
}
SourceEndpoint属性
属性名称 | 类型 | 必须 | 允许更新 | 描述 | 约束 |
属性名称 | 类型 | 必须 | 允许更新 | 描述 | 约束 |
UserName | String | 是 | 是 | 源实例的访问账号。 | 无 |
OracleSID | String | 否 | 是 | 当源实例数据库类型为Oracle时,该参数为Oracle SID。 | 无 |
InstanceID | String | 否 | 是 | 源实例ID。 | 根据InstanceType指定相应的实例ID。 |
IP | String | 否 | 是 | 源实例连接地址。 | 当目标实例为本地自建数据库时,该参数必须指定。 |
Region | String | 是 | 是 | 源实例所在地域。 | 无 |
InstanceType | String | 是 | 是 | 迁移源实例的实例类型。 | 取值:
|
Role | String | 否 | 是 | 当源实例为RDS实例且与目标实例所属的阿里云账号不同时,该参数为源实例所属云账号中已授权的角色名称。 | 执行跨阿里云账号的数据迁移时须指定该参数。该角色所需的权限及授权方式请参见跨阿里云账号任务如何配置RAM授权。 |
DatabaseName | String | 否 | 是 | 数据库名称。 | 当源实例数据库类型为PostgreSQL或MongoDB时,该参数为创建连接时使用的数据库名称。 |
OwnerID | String | 否 | 是 | 当源实例为RDS实例且与目标实例所属阿里云账号不同时,该参数为源实例所属阿里云账号的UID。 | 无 |
EngineName | String | 否 | 是 | 源实例的数据库类型。 | 取值:
当InstanceType不为RDS时,该参数必须指定。 |
Password | String | 是 | 是 | 源实例的访问密码。 | 无 |
Port | String | 否 | 是 | 源实例的监听端口。 | 当源实例为自建数据库时,该参数必须指定。 |
MigrationMode语法
"MigrationMode": {
"DataIntialization": Boolean,
"StructureIntialization": Boolean,
"DataSynchronization": Boolean
}
MigrationMode属性
属性名称 | 类型 | 必须 | 允许更新 | 描述 | 约束 |
属性名称 | 类型 | 必须 | 允许更新 | 描述 | 约束 |
DataIntialization | Boolean | 否 | 是 | 迁移任务是否进行全量数据迁移。 | 取值:
|
StructureIntialization | Boolean | 否 | 是 | 迁移任务是否进行结构迁移。 | 取值:
|
DataSynchronization | Boolean | 否 | 是 | 迁移任务是否进行增量数据同步。 | 取值:
|
DestinationEndpoint语法
"DestinationEndpoint": {
"UserName": String,
"InstanceID": String,
"IP": String,
"Region": String,
"Port": String,
"Role": String,
"DatabaseName": String,
"EngineName": String,
"Password": String,
"InstanceType": String
}
DestinationEndpoint属性
属性名称 | 类型 | 必须 | 允许更新 | 描述 | 约束 |
属性名称 | 类型 | 必须 | 允许更新 | 描述 | 约束 |
UserName | String | 是 | 是 | 目标实例的访问账号。 | 无 |
InstanceID | String | 否 | 是 | 目标实例ID。 | 无 |
IP | String | 否 | 是 | 目标实例连接地址。 | 当目标实例为本地自建数据库时,该参数必须指定。 |
Region | String | 是 | 是 | 目标实例所在地域ID。 | 如果是自建数据库,可以选择离自建IDC物理距离最近的地域。 |
Port | String | 否 | 是 | 目标实例监听端口。 | 当目标实例为自建数据库时,该参数必须指定。 |
DatabaseName | String | 否 | 是 | 目标实例的连接数据库名。 | 目标实例的数据库类型为PostgreSQL、PPAS或MongoDB时,该参数必须指定。 |
EngineName | String | 否 | 是 | 目标库的数据库类型。 | 当InstanceType为RDS、ECS、LocalInstance或Express时,该参数才可用且必须指定。 |
Password | String | 是 | 是 | 目标实例的访问密码。 | 无 |
InstanceType | String | 是 | 是 | 目标实例的实例类型。 | 该参数与SourceEndpoint.InstanceType相同 |
Role | String | 否 | 是 | 当源实例为RDS实例且与目标实例所属的阿里云账号不同时,该参数为目标实例所属云账号中已授权的角色名称。 | 无 |
MigrationObject语法
"MigrationObject": [
{
"TableExcludes": List,
"NewSchemaName": String,
"NewDBName": String,
"TableIncludes": List,
"SchemaName": String,
"DBName": String
}
]
MigrationObject属性
属性名称 | 类型 | 必须 | 允许更新 | 描述 | 约束 |
属性名称 | 类型 | 必须 | 允许更新 | 描述 | 约束 |
TableExcludes | List | 否 | 否 | 待迁移库中不需要迁移的表。 | 示例值: |
NewSchemaName | String | 否 | 否 | 待迁移Schema在目标实例中映射的Schema名称。 | 适用于SQLServer。 |
NewDBName | String | 否 | 否 | 待迁移数据库在目标实例中映射的库名称。 | 不适用于SQLServer。 |
TableIncludes | List | 否 | 否 | 待迁移库中需要迁移的表。 | 无 |
SchemaName | String | 否 | 否 | 待迁移Schema名称。 | 适用于SQLServer。 |
DBName | String | 否 | 否 | 待迁移库名称。 | 不适用于SQLServer。
|
TableIncludes语法
"TableIncludes": [
{
"ColumnExcludes": List,
"FilterCondition": String,
"NewTableName": String,
"TableName": String,
"ColumnIncludes": List
}
]
TableIncludes属性
属性名称 | 类型 | 必须 | 允许更新 | 描述 | 约束 |
属性名称 | 类型 | 必须 | 允许更新 | 描述 | 约束 |
ColumnExcludes | List | 否 | 否 | 待迁移库中不需要迁移的列。 | 示例值: |
FilterCondition | String | 否 | 否 | 过滤条件。 | 无 |
NewTableName | String | 否 | 否 | 待迁移表在目标实例映。射的表名称。 | 无 |
TableName | String | 否 | 否 | 待迁移表表名称。 | 无 |
ColumnIncludes | List | 否 | 否 | 待迁移表中需迁移的列。 | 无 |
ColumnIncludes语法
"ColumnIncludes": [
{
"ColumnName": String,
"NewColumnName": String
}
]
ColumnIncludes属性
属性名称 | 类型 | 必须 | 允许更新 | 描述 | 约束 |
属性名称 | 类型 | 必须 | 允许更新 | 描述 | 约束 |
ColumnName | String | 否 | 否 | 待迁移表中需迁移列名称。 | 无 |
NewColumnName | String | 否 | 否 | 待迁移列在目标实例中映射的列名称。 | 无 |
ColumnExcludes语法
"ColumnExcludes": [
{
"ColumnName": String
}
]
ColumnExcludes属性
属性名称 | 类型 | 必须 | 允许更新 | 描述 | 约束 |
属性名称 | 类型 | 必须 | 允许更新 | 描述 | 约束 |
ColumnName | String | 否 | 否 | 待迁移表中不迁移列名。 | 无 |
TableExcludes语法
"TableExcludes": [
{
"TableName": String
}
]
TableExcludes属性
属性名称 | 类型 | 必须 | 允许更新 | 描述 | 约束 |
属性名称 | 类型 | 必须 | 允许更新 | 描述 | 约束 |
TableName | String | 否 | 否 | 待迁移库名不需要迁移表的表名。 | 无 |
返回值
Fn::GetAtt
MigrationJobId:迁移任务ID。
示例
- 本页导读 (1)
- 语法
- 属性
- SourceEndpoint语法
- SourceEndpoint属性
- MigrationMode语法
- MigrationMode属性
- DestinationEndpoint语法
- DestinationEndpoint属性
- MigrationObject语法
- MigrationObject属性
- TableIncludes语法
- TableIncludes属性
- ColumnIncludes语法
- ColumnIncludes属性
- ColumnExcludes语法
- ColumnExcludes属性
- TableExcludes语法
- TableExcludes属性
- 返回值
- 示例