一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

跨数据库的数据同步方法、装置及存储介质与流程

2022-11-28 11:34:15 来源:中国专利 TAG:

技术特征:
1.一种跨数据库的数据同步方法,其特征在于,应用于服务器,所述方法包括:获取第一数据库的重做redo日志中的第一结构化查询语言sql语句,其中第一sql语句包括第一数据操作语言dml语句;将所述第一数据库中目标表的第一sql语句写入到中间系统中,得到写入的第一sql语句,其中一个所述目标表位于所述中间系统的一个分区内,所述第一数据库包括至少一个所述目标表;对所述写入的第一sql语句进行转换,得到第二sql语句,其中所述第二sql语句为符合第二数据库的语法和主键类型的sql语句,所述第二sql语句包括第二dml语句;基于所述第二dml语句,将所述第二sql语句写入到第二数据库中,使得所述第一数据库的数据同步到所述第二数据库中。2.根据权利要求1所述的跨数据库的数据同步方法,其特征在于,所述将所述第一数据库中目标表的第一sql语句写入到中间系统中,得到写入的第一sql语句之后,所述方法还包括:对所述写入的第一sql语句进行解析,得到键值key-value结构的第一sql语句;将所述key-value结构的第一sql语句作为所述写入的第一sql语句。3.根据权利要求1所述的跨数据库的数据同步方法,其特征在于,所述对所述写入的第一sql语句进行转换,得到第二sql语句包括:对所述写入的第一sql语句中的第一函数和第一主键类型进行转换,得到所述第二sql语句的第二函数和第二主键类型。4.根据权利要求3所述的跨数据库的数据同步方法,其特征在于,所述对所述写入的第一sql语句中的第一函数和第一主键类型进行转换,得到所述第二sql语句的第二函数和第二主键类型包括:响应于所述写入的第一sql语句中的第一函数在所述第二sql语句中存在参数、作用和名称均相同的函数,将所述写入的第一sql语句中的第一函数作为所述第二sql语句的第二函数;响应于所述写入的第一sql语句中的第一主键类型在所述第二sql语句中存在参数、作用和名称均相同的主键类型,将所述写入的第一sql语句中的第一主键类型作为所述第二sql语句的第二主键类型;响应于所述写入的第一sql语句中的第一函数在所述第二sql语句中不存在参数和/或作用相同的函数,将所述写入的第一sql语句中的第一函数删除;响应于所述写入的第一sql语句中的第一主键类型在所述第二sql语句中不存在参数和/或作用相同的主键类型,将所述写入的第一sql语句中的第一主键类型删除;响应于所述写入的第一sql语句中的第一函数在所述第二sql语句中存在参数和作用相同、名称不同的函数,将所述写入的第一sql语句中的第一函数替换为所述第二sql语句的第二函数;响应于所述写入的第一sql语句中的第一主键类型在所述第二sql语句中存在参数和作用相同、名称不同的主键类型,将所述写入的第一sql语句中的第一主键类型替换为所述第二sql语句的第二主键类型。5.根据权利要求1所述的跨数据库的数据同步方法,其特征在于,所述基于所述第二
dml语句,将所述第二sql语句写入到第二数据库中包括:基于所述第二dml语句,确定所述第二dml语句的类型,所述第二dml语句包括插入insert语句、更新update语句和删除delete语句;响应于当前的第二dml语句为insert语句,将所述insert语句所索引的数据写入到数组中进行缓存,将所述insert语句进行拼装,得到并执行拼装后的insert语句,以将所述拼装后的insert语句所索引的数据写入到所述第二数据库中;响应于当前的第二dml语句为update语句,执行所述update语句之前的insert语句,再执行所述update语句,以将所述update语句所索引的数据写入到所述第二数据库中;响应于当前的第二dml语句为delete语句,执行所述delete语句之前的insert语句,再执行所述delete语句,以将所述delete语句所索引的数据写入到所述第二数据库中。6.根据权利要求5所述的跨数据库的数据同步方法,其特征在于,所述将所述insert语句所索引的数据写入到数组中进行缓存,将所述insert语句进行拼装,得到并执行拼装后的insert语句包括:响应于所述insert语句的条数达到预设容量或者与上次拼装的时间间隔达到预设时间,将所述insert语句拼装为一条insert语句。7.根据权利要求1所述的跨数据库的数据同步方法,其特征在于,所述第一数据库具有分析重做日志和归档日志工具包,所述获取第一数据库的redo日志中的第一sql语句,包括:利用所述分析重做日志和归档日志工具包,从所述第一数据库的redo日志中获取并得到所述第一sql语句。8.根据权利要求1所述的跨数据库的数据同步方法,其特征在于,所述第一数据库为oracle数据库,所述第二数据库为mysql数据库。9.一种跨数据库的数据同步装置,其特征在于,所述装置包括:获取模块,用于获取第一数据库的重做redo日志中的第一结构化查询语言sql语句,其中第一sql语句包括第一数据操作语言dml语句;第一写入模块,用于将所述第一数据库中目标表的第一sql语句写入到中间系统中,得到写入的第一sql语句,其中一个所述目标表位于所述中间系统的一个分区内,所述第一数据库包括至少一个所述目标表;转换模块,用于对所述写入的第一sql语句进行转换,得到第二sql语句,其中所述第二sql语句为符合第二数据库的语法和主键类型的sql语句,所述第二sql语句包括第二dml语句;第二写入模块,用于基于所述第二dml语句,将所述第二sql语句写入到第二数据库中,使得所述第一数据库的数据同步到所述第二数据库中。10.一种非易失性计算机可读存储介质,其特征在于,当所述存储介质中的指令由电子设备的处理器执行时,使得所述电子设备能够执行如权利要求1至8中任一项所述的跨数据库的数据同步方法。

技术总结
本申请公开了一种跨数据库的数据同步方法、装置及存储介质,属于数据库技术领域。所述方法应用于服务器,并包括:获取第一数据库的重做日志中的第一结构化查询语言SQL语句;将第一数据库中目标表的第一SQL语句写入到中间系统中,得到写入的第一SQL语句;对写入的第一SQL语句进行转换,得到第二SQL语句;将第二SQL语句写入到第二数据库中,使得第一数据库的数据同步到第二数据库中。该方法可以快速将第一数据库的数据同步到第二数据库中,提高数据同步效率。步效率。步效率。


技术研发人员:崔雪征 徐庆 刘哲生 韩丽敏 张金龙 李娟 贾小龙
受保护的技术使用者:中国石油天然气集团有限公司
技术研发日:2022.08.23
技术公布日:2022/11/25
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献