相关接口 ConfigureMigrationJob 迁移对象定义说明 迁移对象(MigrationObject)的取值类型为Object,支持一定的正则表达式,详细定义如下。
[ { "DBName":"待迁移的库名", "NewDBName":"待迁移的库在目标实例中映射的库名", "SchemaName":"待迁移的Schema名", "NewSchemaName":"待迁移的Schema在目标实例中映射的Schema名", "TableIncludes":[ { "TableName":"待迁移的表名", "NewTableName":"待迁移的表在目标实例中映射的表名", "FilterCondition":"SQL过滤条件", "ColumnIncludes":[ { "ColumnName":"待迁移表中需迁移的列名", "NewColumnName":"待迁移的列在目标表中映射的列名" } ], "ColumnExcludes":[{ "ColumnName":"待迁移表中不需要迁移的列名" }] } ], "TableExcludes":[{ "TableName":"待迁移库中不需要迁移的表名" }] } ] 表 1. 补充说明
参数 说明 SchemaName/NewSchemaName 当迁移SQL Server数据库时,本参数才可用且必须传入。 FilterCondition 过滤条件,只有满足过滤条件的数据才会被迁移到目标数据库中。
说明 过滤条件支持标准的SQL WHERE语句。 过滤条件中如需使用引号,请使用英文单引号(''),例如address in('hangzhou','shanghai')。 迁移对象配置示例 示例一:迁移dtstestdata库中所有的表。
[{ "DBName": "dtstestdata" }] 示例二:将dtstestdata库中所有的表迁移至目标实例的mysqltest库中。
[{ "DBName": "dtstestdata", "NewDBName": "mysqltest" }] 示例三:迁移dtstestdata和mysqltest库中所有的表。
[{ "DBName": "dtstestdata" },{ "DBName": "mysqltest" }] 示例四:迁移dtstestdata库中除表名前缀为order以外的所有表。
[{ "DBName": "dtstestdata", "TableExclude": [{ "TableName": "order.*" }] }] 示例五:迁移dtstestdata库中的customer表,且只迁移id列中的值大于100的数据。
[{ "SchemaName": "dtstestdata", "TableInclude": [{ "TableName": "customer", "FilterCondition": "id > 100" }] }] 示例六:迁移dtstestdata库中的customer表,且只迁移表中的id和address列。
[{ "SchemaName": "dtstestdata", "TableIncludes": [{ "TableName": "customer", "ColumnIncludes": [{ "ColumnName": "id" }, { "ColumnName": "address" } ] }] }] 支持的正则表达式
符号 规则描述 英文句号(.) 表示匹配除‘\r\n’之外的任何单个字符。 星号(*) 表示匹配前面子表达式任意次,例如:h.*llo将匹配 hllo或heeeello等字符串。 英文问号(?) 表示匹配前面子表达式零次或1次,例如:h.?llo将匹配hllo或hello,但不能匹配haello。 [characters] 字符集合 表示匹配方括号内任意一个字符,例如:h[ae]llo将匹配hallo或hello。 [^characters] 负值字符集合 表示不匹配方括号内任意一个字符,例如:h[^ae]llo将匹配hcllo或hdllo,但不能匹配hallo或hello。 [character1-character2] 字符范围 表示匹配character1-character2范围内的字符,例如: [0-9]、[a-z]。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。