暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

OGG基于scn的在线校验方案

IT那活儿 2025-12-01
47
点击上方“IT那活儿”公众号--专注于企业全栈运维技术分享,不管IT什么活儿,干就完了!!!  


背景描述

oracle数据库进行割接迁移时,有时候会用到OGG进行数据迁移工作对于整个迁移流程,数据校验是迁移中的难点
源库通常为7*24小时运行的业务系统,一般不可能有长时间停业进行数据校验的窗口,若在割接当晚进行数据校验,割接质量无法保证,迁移数据量大的情况下,数据校验耗时长,也没有足够的时间去进行数据修复。
OGG基于SCN的动态校验方法,可以很好的解决这个问题,不需要停业,在迁移的过程中随时进行数据校验,源端目标端数据不一致也可以提前发现、提前修复,保证正式割接时的数据质量。
环境准备:
  • 源端Oracle数据库版本19.17
  • 目标端Oracle数据库版本:19.17
  • OGG版本:19.24
  • 迁移表:DBAUSER. OGG_TEST
模拟数据插入,每秒钟插入一条数据:


校验方案

2.1 停止源端OGG抽取进程
2.2 检查源端抽取进程SCN、投递进程RBA、目标端复制进程RBA
确认源端抽取进程SCN、投递进程RBA、目标端复制进程RBA不再变动,目标端数据静止。
2.3 基于scn对源端目标端表数据进行counthash校验
使用抽取进程停止时最后SCN在源端对测试表进行基于SCNcounhash查询:
在目标端执行counthash查询:
确认源端和目标端表的counthash结果一致,表明源端和目标端数据一致,数据校验完成。
总结说明:
OGG基于scn的在线校验方法,具有零停业、随时校验的特性,适用于零停机、实时同步的场景。

END


本文作者:袁 钢(上海新炬中北团队)

本文来源:“IT那活儿”公众号

文章转载自IT那活儿,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论