(19)中华人民共和国国家知识产权局
(12)发明专利申请
(10)申请公布号 (43)申请公布日 (21)申请号 201911073853.7
(22)申请日 2019.11.06
(71)申请人 杭州安恒信息技术股份有限公司
地址 310000 浙江省杭州市滨江区西兴街
道联慧街188号
(72)发明人 巫旭阳 范渊
(74)专利代理机构 北京超凡宏宇专利代理事务
所(特殊普通合伙) 11463
代理人 张磊
(51)Int.Cl.
G06F 16/27(2019.01)
G06F 16/22(2019.01)
G06F 16/28(2019.01)
(54)发明名称截屏电脑快捷键是什么
全球最丑的十大建筑关系型数据库双主数据增量同步方法和系
统
(57)摘要
本发明提供了一种关系型数据库双主数据
增量同步方法和系统,应用于双主模式下的关系
型数据库管理系统,关系型数据库管理系统包括
第一数据库和第二数据库,当第一数据库向第二
数据库同步数据时,方法包括:获取第一数据库
发送的待同步数据;待同步数据包括第一数据主
键;在第二数据库的来源主键列表中查与第一
数据主键相匹配的目标来源主键;若未在来源主
键列表中到目标来源主键,则在来源主键列表
中创建目标来源主键字段,并将第二数据库中的
第一数据主键对应字段的值初始化,将待同步数
据同步到第二数据库中。本发明缓解了现有技术
中存在的对于主键冲突在横向扩容时会受到限
制的技术问题。权利要求书2页 说明书7页 附图3页CN 110781243 A 2020.02.11
C N 110781243
A
钱塘江观潮最佳地点1.一种关系型数据库双主数据增量同步方法,其特征在于,应用于双主模式下的关系型数据库管理系统,所述关系型数据库管理系统包括第一数据库和第二数据库,当第一数据库向第二数据库同步数据时,所述方法包括:
获取所述第一数据库发送的待同步数据;所述待同步数据包括第一数据主键;
在所述第二数据库的来源主键列表中查与所述第一数据主键相匹配的目标来源主键;其中,所述来源主键列表为所述第一数据库向所述第二数据库的历史同步数据的主键列表;
若未在所述来源主键列表中到所述目标来源主键,则在所述来源主键列表中创建目标来源主键字段,并将所述第二数据库中的第一数据主键对应字段的值初始化,将所述待同步数据同步到所述第二数据库中;其中,所述目标来源主键的值为所述第一数据主键。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
我等的花儿都谢了若在所述来源主键列表中到了所述目标来源主键,则直接将所述待同步数据同步到所述第二数据库中。
3.根据权利要求1所述的方法,其特征在于,在获取所述第一数据库发送的待同步数据之后,所述方法还包括:
对所述待同步数据进行安全性验证,其中,所述安全性验证包括:IP白名单验证和Token验证。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:将所述待同步数据中的外键转换成所述第二数据库中对应数据的外键。
5.一种关系型数据库双主数据增量同步系统,其特征在于,应用于双主模式下的关系型数据库管理系统,所述同步系统包括:获取模块,匹配模块和主键转换模块,其中,所述获取模块,用于获取第一数据库发送的待同步数据;所述待同步数据包括第一数据主键;
所述匹配模块,用于在第二数据库的来源主键列表中查与所述第一数据主键相匹配的目标来源主键;其中,所述来源主键列表为所述第一数据库向所述第二数据库的历史同步数据的主键列表;
所述主键转换模块,用于若未在所述来源主键列表中到所述目标来源主键,则在所述来源主键列表中创建目标来源主键字段,并将所述第二数据库中的第一数据主键对应字段的值初始化,将所述待同步数据同步到所述第二数据库中;其中,所述目标来源主键的值为所述第一数据主键。
6.根据权利要求5所述的同步系统,其特征在于,所述主键转换模块还用于:
若在所述来源主键列表中到了所述目标来源主键,则直接将所述待同步数据同步到所述第二数据库中。
7.根据权利要求5所述的同步系统,其特征在于,所述同步系统还包括:验证模块,用于对所述待同步数据进行安全性验证,其中,所述安全性验证包括:IP白名单验证和Token验证。
8.根据权利要求5所述的同步系统,其特征在于,所述同步系统还包括:外键转换模块,用于将所述待同步数据中的外键转换成所述第二数据库中对应数据的外键。
9.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运
行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现上述权利要求1至4任一项所述的方法的步骤。
10.一种具有处理器可执行的非易失的程序代码的计算机可读介质,其特征在于,所述程序代码使所述处理器执行所述权利要求1-4任一所述方法。
关系型数据库双主数据增量同步方法和系统
技术领域
[0001]本发明涉及关系型数据库管理系统技术领域,尤其是涉及一种关系型数据库双主数据增量同步方法和系统。
背景技术
[0002]关系型数据库管理系统(MySQL)双主模式:
[0003]两台MySQL都可读写,互为主备,默认只使用一台(masterA)负责数据的写入,另一台(masterB)备用;masterA是masterB的主库,masterB又是masterA的主库,它们互为主从;MySQL数据同步使用数据库操作日志(binlog)进行数据同步,两个台数据库相互发送各自的binlog进行同步。
[0004]而现有技术中,对于关系型数据库双主数据增量的同步方式中,对于出现的主键冲突:为了防止自增id(Identity document)冲突,解决办法是一个服务器使用奇数id,另一个服务器使用偶数id,合
黄瓜鱼worked怎么读并的时候一般不会产生冲突,但横向扩容时会受到限制。如果一开始没有设置好自增策略,则数据进行同步时会出现异常。
发明内容
[0005]有鉴于此,本发明的目的在于提供一种关系型数据库双主数据增量同步方法和系统,以缓解现有技术中存在的对于主键冲突在横向扩容时会受到限制的技术问题。[0006]第一方面,本发明实施例提供了一种关系型数据库双主数据增量同步方法,应用于双主模式下的关系型数据库管理系统,所述关系型数据库管理系统包括第一数据库和第二数据库,当第一数据库向第二数据库同步数据时,所述方法包括:获取所述第一数据库发送的待同步数据;所述待同步数据包括第一数据主键;在所述第二数据库的来源主键列表中查与所述第一数据主键相匹配的目标来源主键;其中,所述来源主键列表为所述第一数据库向所述第二数据库的历史同步数据的主键列表;若未在所述来源主键列表中到所述目标来源主键,则在所述来源主键列表中创建目标来源主键字段,并将所述第二数据库中的第一数据主键对应字段的值初始化,将所述待同步数据同步到所述第二数据库中;其中,所述目标来源主键的值为所述第一数据主键。
[0007]进一步地,所述方法还包括:若在所述来源主键列表中到了所述目标来源主键,则直接将所述待同步数据同步到所述第二数据库中。
[0008]进一步地,在获取所述第一数据库发送的待同步数据之后,所述方法还包括:对所述待同步数据进行安全性验证,其中,所述安全性验证包括:IP白名单验证和Token验证。[0009]进一步地,所述方法还包括:将所述待同步数据中的外键转换成所述第二数据库中对应数据的外键。
[0010]第二方面,本发明实施例还提供了一种关系型数据库双主数据增量同步系统,应用于双主模式下的关系型数据库管理系统,所述同步系统包括:获取模块,匹配模块和主键转换模块,其中,所述获取模块,用于获取第一数据库发送的待同步数据;所述待同步数据
包括第一数据主键;所述匹配模块,用于在第二数据库的来源主键列表中查与所述第一数据主键相匹配的目标来源主键;其中,所述来源主键列表为所述第一数据库向所述第二数据库的历史同步数据的主键列表;所述主键转换模块,用于若未在所述来源主键列表中到所述目标来源主键,则在所述来源主键列表中创建目标来源主键字段,并将所述第二数据库中的第一数据主键对应字段的值初始化,将所述待同步数据同步到所述第二数据库中;其中,所述目标来源主键的值为所述第一数据主键。
[0011]进一步地,所述主键转换模块还用于:若在所述来源主键列表中到了所述目标来源主键,则直接将所述待同步数据同步到所述第二数据库中。
[0012]进一步地,所述同步系统还包括:验证模块,用于对所述待同步数据进行安全性验证,其中,
所述安全性验证包括:IP白名单验证和Token验证。
[0013]进一步地,所述同步系统还包括:外键转换模块,用于将所述待同步数据中的外键转换成所述第二数据库中对应数据的外键。
[0014]第三方面,本发明实施例还提供了一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述第一方面所述的方法的步骤。
[0015]第四方面,本发明实施例还提供了一种具有处理器可执行的非易失的程序代码的计算机可读介质,所述程序代码使所述处理器执行上述第一方面所述方法。
[0016]本发明提供了一种关系型数据库双主数据增量同步方法和系统,应用于双主模式下的关系型数据库管理系统,包括:获取第一数据库发送的待同步数据;待同步数据包括第一数据主键;在第二数据库的来源主键列表中查与第一数据主键相匹配的目标来源主键;若未在来源主键列表中到目标来源主键,则在来源主键列表中创建目标来源主键字段,并将第二数据库中的第一数据主键对应字段的值初始化,将待同步数据同步到第二数据库中。本发明通过在被同步数据库中创建来源主键列表的方式,缓解了现有技术中存在的对于主键冲突在横向扩容时会受到限制的技术问题。
附图说明
[0017]为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0018]图1为本发明实施例提供的一种关系型数据库双主数据增量同步方法的流程图;[0019]图2为本发明实施例提供的一种数据入库同步方法的流程图;
[0020]图3为本发明实施例提供的一种关系型数据库双主数据增量同步系统的示意图;[0021]图4为本发明实施例提供的另一种关系型数据库双主数据增量同步系统的示意图。
具体实施方式
[0022]下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论