迁移Oracle到KingbaseES | 迁移数据案例
一、迁移前的准备
详细配置见文档《迁移Oracle到KingbaseES | KingbaseES兼容性初始化配置》。
二、配置源库和目标库的连接
本案例讲述Oracle 12c迁移数据到KingbaseES V8R6步骤。
配置源库和目标库的连接并测试,保证主备库连接正常。


三、建立迁移任务
3.1 建立新任务

3.2 选择需要迁移的schema

注意:
在Oracle数据库每个用户自动对应一个同名的schema,所以需要在KingbaseES数据库下创建同名的schema并分配相应的权限。
3.3 选择需要迁移的对象

3.4 迁移配置

参数解释:
“最大并发数”:执行迁移任务线程数(可根据主机cpu支持的线程数配置)
“写缓冲大小”:迁移数据时,每个线程一次写入目标数据库数据量大小,单位MB。内存使用量 = 最大并发数 * 写缓冲大小
“数据提交量”:指进行迁移数据步骤时,向目的端数据库一次提交的记录个数,默认是50000。
建表/重建表并导入数据:将原来的表删除,并创建新表,其数据类型是根据类型映射表转换后的数据类型,数据是源表中的数据时,表示迁移正确。
删除已存在的表数据后导入数据:保留目的库中的同名表,将该表中数据删除,迁移源表中的数据到该表。以此种方式迁移后的表,其数据类型是原来目的表的数据类型,表中数据是源表中的数据。
追加数据:保留目的库中的同名表,及表中的数据,迁移源表中的数据到该表,如果源表中记录和目的表中的原有记录有约束冲突,则不迁移这些记录。以此种方式迁移后的表中包含了源表和目的表中所有数据(不包含有约束冲突的数据)。
“迁移出错时终止迁移”:当一次迁移任务中的任何一个表记录出错时,迁移工具就会退出。要求迁移的数据准确率很高时,可以使用该选项;
“迁移出错时继续执行”:某个表出现迁移错误时不会影响其它迁移任务的执行。
“copy 迁移“:在目标数据库中会有多个连接同时对该表执行copy数据的行为。
”fdw迁移“:在目标数据库中会有多个连接同时对该表执行insert into数据的行,暂不支持。
非对象设置: 支持配置迁移非表对象,表示迁移任务是否迁移源数据库的此类对象,非表对象包括检查约束,索引,唯一性约束,外键,排他约束,缺省,触发器,注释。
“快速迁移”:对于数据库对象很多的场景(如1000张表),可勾选“快速迁移”,提高迁移速度。
3.5 建立数据类型的映射

3.6 核对迁移任务

3.7 开启迁移任务

四、迁移完成
4.1 迁移完成报告

4.2 迁移过程详细操作

4.3 迁移统计信息

五、验证迁移结果
5.1 查询源库(Oracle)数据

5.2 查目标库(KingbaseES)数据

六、总结
对于KingbaseES下的DTS迁移工具,支持异构数据库环境的迁移,但在迁移前要注意不同数据库之间的兼容特性。
对于迁移中出现的错误,或发现迁移失败的对象,可以从最后的统计信息中查看迁移失败的对象,并分析失败的原因。
参考文档:
《Oracle至KingbaseES V8R6 迁移最佳实践》
DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐

所有评论(0)