Squids DBMotion 2304发版成功,再添重量级数据同步功能——支持Oracle迁移到GaussDB。
GaussDB是华为自主创新研发的分布式关系型数据库。该产品具备企业级复杂事务混合负载能力,同时支持分布式事务,同城跨AZ部署,数据0丢失,支持1000+的扩展能力,PB级海量存储。并拥有云上高可用、高可靠、高安全,弹性伸缩、一键部署、快速备份恢复、监控告警等关键能力,能为企业提供功能全面、稳定可靠、扩展性强、性能优越的企业级数据库服务。
在源库和目标库配置中,Oracle需要填入IP、端口、service_name以及连接Oracle的用户名密码 和 ASM用户名密码。其中ASM用户名密码用于连接数据库获取redo日志;GaussDB需要填入IP、Port、数据库名称、用户名和密码。
迁移选项配置页面上,选择需要同步的表(T3)。DBMotion目前不支持对象迁移,仅支持全量和增量迁移,用户可以勾选需要执行的步骤,并选择冲突策略以及是否过滤DDL。
其他步骤跟同步其他种类数据库相似,配置确认和预检查没问题之后,就可以创建并运行任务了。
如下图所示,源库中原本有7笔数据。
全量迁移:任务开始运行以后,DBMotion会将Oracle的数据迁移到GaussDB上来,这里显示全部迁移成功了。注意:Oracle允许在字符串字段中任意位置包含ascii 0值,GaussDB则不允许有ascii 0值,DBMotion默认会将ascii 0转换为空格字符。
迁移后的目标库数据以及迁移到chr0_user1.t3的7笔数据如下图所示。
在源库上进行插入、更新操作。
查看增量状态,可以看到增量同步的进度和性能。这里增量采用的是o2k,是由沃趣科技自主研发的Oracle日志解析工具。
目标端可查看数据是否完成同步。
Oracle到GaussDB同步,支持对象校验,DBMotion会校验表和字段在目标端是否存在。
数据校验时,不仅会校验行数是否一致,同时也会校验字段值是否一致。此处,由于acsii0被转换为空格,出现两边数据不一致的情况,因此校验数据为不一致。
另外,在监控中可以查看全量和增量迁移时的性能指标。
本次版本更新包括如下内容:
支持 Oracle到GaussDB的全量迁移
支持常规类型和LOB类型的字段
支持Oracle GBK字符集到GaussDB UTF8字符集的转换
支持将ascii0映射到用户指定的字符串,高级配置中可设置替换字符串
支持schema和table名的映射
支持自动转换schman/table/column名,高级配置中可配置三种转换策略:
None: 不自动转换
Normal: 自动将Oracle的大写转换成GaussDB的小写,大小写混合名字不转换。
All: 自动将所有的名字转换成GaussDB的小写
支持按主键或唯一键分片(目前只支持数值列)
多分片并行迁移,分片内批量处理,提升迁移性能
支持Oracle到GaussDB的增量同步
支持常规类型和XMLTYPE字段
支持Oracle GBK字符集到GaussDB UTF8字符集的转换
支持schema/table名的映射
不支持大小写混合的字段名
支持同步无主键表
支持自动冲突处理(覆盖/忽略/失败)
支持并行解析源库日志和并行更新目标端,提供高性能、低延时的同步
支持基本的预检查功能
数据库配置检查
无主键的检查
权限检查
支持对象校验和数据校验
校验表是否存在
校验列名是否一致
校验常规类型的数据是否一致
不能校验LOB类型
不能校验含有乱码的字符值
其它变更
优化元数据库的初始化,加速启动速度,减少连接数
问题修复
修复了增量过程中创建的表不能被校验的问题
修复了MySQL到ClickHouse数据校验失败的问题
修复了数据校验失败时校验状态未更新的问题
修复了获取数据库列表时错误的分页数问题
丝滑的DBMotion,助您云上畅游。
赶紧用起来吧!
SaaS产品,永久免费使用,地址:
https://squids.cn/product/dbmotion
服务电话: 400-678-1800 (周⼀⾄周五 09:00-18:00)
商务合作: 0571-87770835
市场反馈: marketing@woqutech.com
地址: 杭州市滨江区滨安路1190号智汇中⼼A座1101室