解决方案

GreatDB替代Oracle解决方案


一、方案背景


本方案结合相关项目建设经验,介绍Oracle数据库到万里安全数据库软件的通用迁移方案,将覆盖原库数据及应用相关SQL的迁移,覆盖信息采集、兼容性评估、迭代改造、功能与非功能验证、数据迁移同步、模拟割接、数据校验、上线割接、数据回流等项目数据库国产化替代的完成流程。

整个方案分为8大部分:集群规模评估、兼容性评估、库表与对象迁移、测试验证、模拟割接演练、启动上线割接流程、上线后保障监控、以及最后的原库下线。


二、解决方案

GreatDB集中式产品兼容部分Oracle 语法,其支持的语法的类别全面覆盖数据库语法类别,提供递归查询、Merge into、rownum、+外链接、decode在内的100+SQL语法与功能点,同时还提供大量实用高级数据库对象,例如序列、DBLink、高级包等,并配套GreatDTS迁移评估工具,提高Oracle迁移改造过程中的采集、评估、对象自动转换等3个环节的便捷性、效率与正确性;对工作量评估难度最高的改造环节提供SQL与对象不兼容点列表参考,增加改造工作量评估的准确性,提高改造效率。


1)集群规模评估

基于业务调研和GreatDTS工具初步的信息采集,进行万里安全数据库软件集群的部署规模评估。


2)兼容性评估

基于GreatDTS迁移评估工具实施Oracle原库的兼容性评估。在测试环境中搭建Oracle库并初始化测试数据或生产脱敏数据;基于GreatDTS工具对Oracle测试库进行信息采集。如下图所示,可以有3种采集方式,包括离线语句、在线采集与离线采集。由于是测试环境的初次采集,推荐选用在线采集。

 

3)库表与对象迁移

基于兼容性评估阶段的产出,GreatDTS迁移评估工具实施Oracle原库的库表对象迁移。将测试环境的Oracle的库表与其他数据库对象整体迁移到万里安全数据库软件集群中。

4)测试验证

进行测试验证前首先需要迁移测试数据。基于GreatDTS数据迁移工具将Oracle测试库的数据整体迁移到万里安全数据库软件GreatDB集群。

 

5)模拟割接演练

在完成业务功能性能与同步回流的验证后,将启动模拟割接演练。模拟割接演练主要使用GreatDTS工具进行数据的全量、增量同步以及数据一致性校验。


6)启动上线割接流程

上线割接流程将主要使用GreatDTS工具进行数据的全量、增量同步以及数据一致性校验。经历数据初始化、数据一致性比对、启动割接等几个阶段。


7)上线后保障监控

业务上线后将进入保障监控阶段,基于万里安全数据库软件配套的运维管理平台GreatADM进行数据库全生命周期的运维管理与监控告警。GreatADM工具配合万里安全数据库软件GreatDB处置预案,在业务上线后对数据库进行全方位的保驾护航。

 

8)原库下线

线上业务平稳运行足够长时间后,可以按需停止数据回流,对原Oracle库进行下线处置。


9)迁移回切

数据回迁主要用于满足割接后问题回退的需求:数据迁移完成后,割接窗口期内需要部署binlog server用于收集greatdb集群产生的增量binlog日志。数据回迁时,停掉greatdb集群中的业务,使用增量同步工具读取binlog server中的日志进行解析拼接为可执行的SQL语句,最后以ODBC方式连到oracle中还原oracle中的数据,实现回退。回退期间不影响oracle库中其他业务使用。