[发明专利]一种异构数据库同步数据一致性校验方法及装置有效
申请号: | 201910510663.0 | 申请日: | 2019-06-13 |
公开(公告)号: | CN110347746B | 公开(公告)日: | 2020-06-26 |
发明(设计)人: | 付铨;孙峰;余院兰;赵家威 | 申请(专利权)人: | 武汉达梦数据库有限公司 |
主分类号: | G06F16/27 | 分类号: | G06F16/27;G06F16/23 |
代理公司: | 武汉智嘉联合知识产权代理事务所(普通合伙) 42231 | 代理人: | 黄君军 |
地址: | 430000 湖北省武汉市东湖新技术开*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 数据库 同步 数据一致性 校验 方法 装置 | ||
1.一种异构数据库同步数据一致性校验方法,其特征在于,包括以下步骤:
在目标端数据库建立提交事务表,在所述提交事务表中记录同步的源库事务信息;
捕获并解析源端数据库的源端事务日志;
捕获并解析目标端数据库的目标端事务日志;
将所述目标端事务日志发送至源端数据同步校验服务;
根据所述同步的源库事务信息对比所述源端事务日志与所述目标端事务日志,校验同步数据的一致性;
在所述提交事务表中记录同步的源库事务信息,具体为:
以事务为最小同步单位,在同步事务的最后增加插入所述提交事务表的插入操作;
目标端数据库提交一个所述同步事务时,在所述提交事务表中插入一行提交事务记录;
所述源库事务信息包括事务ID、事务起始SCN以及事务提交SCN,所述提交事务表记录的事务ID为源端数据库的事务ID;
根据所述同步的源库事务信息对比所述源端事务日志与所述目标端事务日志,校验同步数据的一致性,具体为:
对比所述提交事务表记录的事务ID与所述源端事务日志捕获的事务ID,匹配事务ID相同的源端事务日志中同步事务和目标端事务日志中同步事务,校验匹配的同步事务中各个操作的一致性。
2.根据权利要求1所述的异构数据库同步数据一致性校验方法,其特征在于,所述提交事务表还用于记录同步断点信息。
3.根据权利要求1所述的异构数据库同步数据一致性校验方法,其特征在于,捕获并解析源端数据库的源端事务日志,具体为:
以事务为单位,将同一同步事务的所有操作进行缓存。
4.根据权利要求1所述的异构数据库同步数据一致性校验方法,其特征在于,捕获并解析目标端数据库的目标端事务日志,具体包括:
提取所述提交事务表的事务日志,提取出所述提交事务表记录的事务ID。
5.根据权利要求1所述的异构数据库同步数据一致性校验方法,其特征在于,校验匹配的同步事务中各个操作的一致性,具体为:
计算同步事务中各个操作的MD5值,根据MD5值对同步事务中各个操作进行比较。
6.一种异构数据库同步数据一致性校验装置,其特征在于,包括源端服务器和目标端服务器;所述源端服务器内部署有源端对比程序,所述目标端服务器内部署有目标端对比程序;
所述目标端服务器用于建立提交事务表,在所述提交事务表中记录同步的源库事务信息;
所述源端对比程序用于捕获并解析源端数据库的源端事务日志;
所述目标端对比程序用于捕获并解析目标端数据库的目标端事务日志;将所述目标端事务日志发送至源端数据同步校验服务;
所述源端对比程序还用于根据所述同步的源库事务信息对比所述源端事务日志与所述目标端事务日志,校验同步数据的一致性;
在所述提交事务表中记录同步的源库事务信息,具体为:
以事务为最小同步单位,在同步事务的最后增加插入所述提交事务表的插入操作;
目标端数据库提交一个所述同步事务时,在所述提交事务表中插入一行提交事务记录;
所述源库事务信息包括事务ID、事务起始SCN以及事务提交SCN,所述提交事务表记录的事务ID为源端数据库的事务ID;
根据所述同步的源库事务信息对比所述源端事务日志与所述目标端事务日志,校验同步数据的一致性,具体为:
对比所述提交事务表记录的事务ID与所述源端事务日志捕获的事务ID,匹配事务ID相同的源端事务日志中同步事务和目标端事务日志中同步事务,校验匹配的同步事务中各个操作的一致性。
7.根据权利要求6所述的异构数据库同步数据一致性校验装置,其特征在于,所述源端对比程序包括源端日志捕获模块、源端日志分析模块、源端日志接收模块以及日志对比模块;所述源端日志捕获模块用于捕获源端数据库的源端事务日志,所述源端日志分析模块用于解析源端数据库的源端事务日志,所述源端日志接收模块用于接收所述目标端发送模块发送的所述目标端事务日志,所述日志对比模块用于根据所述同步的源库事务信息对比所述源端事务日志与所述目标端事务日志,校验同步数据的一致性;
所述目标端对比程序包括目标端日志捕获模块、目标端日志分析模块以及目标端日志发送模块;所述目标端日志捕获模块用于捕获目标端数据库的目标端事务日志,所述目标端分析模块用于解析目标端数据库的目标端事务日志,所述目标端发送模块用于发送所述目标端事务日志至所述源端日志接收模块。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于武汉达梦数据库有限公司,未经武汉达梦数据库有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910510663.0/1.html,转载请声明来源钻瓜专利网。