CN109063135B - 一种基于多活分布式架构的数据库复制方法及系统 - Google Patents

一种基于多活分布式架构的数据库复制方法及系统 Download PDF

Info

Publication number
CN109063135B
CN109063135B CN201810875524.3A CN201810875524A CN109063135B CN 109063135 B CN109063135 B CN 109063135B CN 201810875524 A CN201810875524 A CN 201810875524A CN 109063135 B CN109063135 B CN 109063135B
Authority
CN
China
Prior art keywords
database system
database
data center
backup table
backup
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201810875524.3A
Other languages
English (en)
Other versions
CN109063135A (zh
Inventor
不公告发明人
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
National Clearing Center People's Bank Of China
Original Assignee
National Clearing Center People's Bank Of China
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by National Clearing Center People's Bank Of China filed Critical National Clearing Center People's Bank Of China
Priority to CN201810875524.3A priority Critical patent/CN109063135B/zh
Publication of CN109063135A publication Critical patent/CN109063135A/zh
Application granted granted Critical
Publication of CN109063135B publication Critical patent/CN109063135B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1448Management of the data involved in backup or backup restore

Abstract

本发明提供了一种基于多活分布式架构的数据库复制方法及系统,包括:在第一数据中心创建第一数据库系统备份表,并在第二数据中心创建第二数据库系统备份表;将第一数据中心的第一数据库系统表实时同步到第二数据库系统备份表中;当数据中心从第一数据中心切换至第二数据中心时,根据第二数据库系统备份表生成数据库更新脚本;执行数据库更新脚本更新第二数据中心的第二数据库系统表,并将第二数据库系统表实时同步到第一数据库系统备份表中。本申请通使源数据中心与目标数据中心部署相同应用脚本,将源数据中心对象信息实时同步至目标数据中心数据库系统备份表中,具有保证数据中心切换后交易正常处理、降低运维成本及应用开发风险的有益效果。

Description

一种基于多活分布式架构的数据库复制方法及系统
技术领域
本发明涉及数据库技术领域,尤其涉及一种基于多活分布式架构的数据库复制方法及系统。
背景技术
基于当前Q-REP软件的功能,只能实现客户业务数据同步,而在实际的应用中,Sequence、Identity Column等特点数据库对象和应用数据结合紧密,是用于标识业务数据或者业务报文的唯一性标志,而记录Sequence和Identity Column数据库对象的DB2元数据信息,无法通过Q-REP实现数据同步,因此将导致数据中心的Sequence和Identity Column数据库对象的元数据信息不同步,例如第一数据中心已经取值到100,而第二数据中心取值还是50,当数据中心由第一数据中心切换到第二数据中心后,Sequence或者IdentityColumn的值将继续从51开始取值,这样将出现数据中心切换后数据51~100发生重复取值(应用层面预期从100之后开始取值),将导致业务处理失败。
虽然可以在技术层面上,通过设置第一数据中心Sequence和Identity Column取值范围或者自增长方式,避免两个数据中心数据重复,例如第一数据中心取奇数(1、3、5、7、…),而第二数据中心取偶数值(2、4、6、8、…),但这将导致第一数据中心和第二数据中心的数据库对象定义属性存在差异,即长期维护两套应用数据库对象定义脚本,非常不利于应用开发和系统维护,极有可能发生由于两套脚本维护失误所导致的数据中心切换后,业务处理失败的生产事故。
因此,如何通过维护一套相同应用脚本来确保数据中心切换后,第二数据中心Sequence和Identity Column取值正确,避免因为数据库元数据不同步而导致Sequence和Identity Column取值重复,影响业务系统正常处理的问题,是当前亟待解决的技术问题。
发明内容
为了解决现有技术中的缺陷,本发明提供了一种基于多活分布式架构的数据库复制方法及系统,本申请在源数据与目标数据中心通过维护一套相同应用脚步,确保数据中心切换后,避免目标数据中心的Sequence和Identity Column取值重复,及保证交易业务的正常处理,具有降低系统运维成本及降低应用开发风险的有益效果。
为了实现上述目的,本发明提供了一种基于多活分布式架构的数据库复制方法,该方法包括:
在第一数据中心创建第一数据库系统备份表,并在第二数据中心创建第二数据库系统备份表;
将所述第一数据中心的第一数据库系统表实时同步到所述第二数据库系统备份表中;第二数据中心
当数据中心从所述第一数据中心切换至所述第二数据中心时,根据所述第二数据库系统备份表生成数据库更新脚本;
执行所述数据库更新脚本更新所述第二数据中心的第二数据库系统表,并将所述第二数据库系统表实时同步到所述第一数据库系统备份表中。
本发明还提供了一种基于多活分布式架构的数据库复制系统,该系统包括:
创建单元,用于在第一数据中心创建第一数据库系统备份表,并在第二数据中心创建第二数据库系统备份表;
同步单元,用于将所述第一数据中心的第一数据库系统表实时同步到所述第二数据库系统备份表中;
脚本生成单元,用于根据所述第二数据库系统备份表生成数据库更新脚本;
更新单元,用于执行所述数据库更新脚本更新所述第二数据中心的第二数据库系统表,并将所述第二数据库系统表实时同步到所述第一数据库系统备份表中。
本发明还提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
在第一数据中心创建第一数据库系统备份表,并在第二数据中心创建第二数据库系统备份表;
将所述第一数据中心的第一数据库系统表实时同步到所述第二数据库系统备份表中;第二数据中心
当数据中心从所述第一数据中心切换至所述第二数据中心时,根据所述第二数据库系统备份表生成数据库更新脚本;
执行所述数据库更新脚本更新所述第二数据中心的第二数据库系统表,并将所述第二数据库系统表实时同步到所述第一数据库系统备份表中。
本发明还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
在第一数据中心创建第一数据库系统备份表,并在第二数据中心创建第二数据库系统备份表;
将所述第一数据中心的第一数据库系统表实时同步到所述第二数据库系统备份表中;第二数据中心
当数据中心从所述第一数据中心切换至所述第二数据中心时,根据所述第二数据库系统备份表生成数据库更新脚本;
执行所述数据库更新脚本更新所述第二数据中心的第二数据库系统表,并将所述第二数据库系统表实时同步到所述第一数据库系统备份表中。
本发明提供的一种基于多活分布式架构的数据库复制方法及系统,包括:在第一数据中心创建第一数据库系统备份表,并在第二数据中心创建第二数据库系统备份表;将所述第一数据中心的第一数据库系统表实时同步到所述第二数据库系统备份表中;第二数据中心当数据中心从所述第一数据中心切换至所述第二数据中心时,根据所述第二数据库系统备份表生成数据库更新脚本;执行所述数据库更新脚本更新所述第二数据中心的第二数据库系统表,并将所述第二数据库系统表实时同步到所述第一数据库系统备份表中。本申请通过在源数据中心(即第一数据中心)与目标数据中心(即第二数据中心)通过维护一套相同应用脚步,从而确保数据中心切换后能避免第二数据中心的Sequence和IdentityColumn取值重复,及保证交易业务的正常处理,具有降低系统运维成本及降低应用开发风险的有益效果。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请的一种基于多活分布式架构的数据库复制方法流程图;
图2是本申请一实施例中的基于多活分布式架构的数据库复制方法流程图;
图3是本申请一实施例中的数据中心切换前的示意图;
图4是本申请一实施例中的数据中心切换后的示意图;
图5是本申请的一种基于多活分布式架构的数据库复制系统的结构示意图;
图6是本申请一实施例中的脚本生成单元的结构示意图;
图7是本申请一实施例中的更新单元的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
关于本文中所使用的“第一”、“第二”、……等,并非特别指称次序或顺位的意思,亦非用以限定本发明,其仅为了区别以相同技术用语描述的元件或操作。
关于本文中所使用的“包含”、“包括”、“具有”、“含有”等等,均为开放性的用语,即意指包含但不限于。
关于本文中所使用的“及/或”,包括所述事物的任一或全部组合。
针对现有技术中存在的缺陷,本发明提供了一种基于多活分布式架构的数据库复制方法,其流程图如图1所示,该方法包括:
S101:在第一数据中心创建第一数据库系统备份表,并在第二数据中心创建第二数据库系统备份表;
S102:将第一数据中心的第一数据库系统表实时同步到第二数据库系统备份表中;
S103:当数据中心从第一数据中心切换至第二数据中心时,根据第二数据库系统备份表生成数据库更新脚本;
S104:执行数据库更新脚本更新第二数据中心的第二数据库系统表,并将第二数据库系统表实时同步到第一数据库系统备份表中。
由图1所示的流程可知,本申请提供的基于多活分布式架构的数据库复制方法,在第一数据中心创建第一数据库系统备份表,并在第二数据中心创建第二数据库系统备份表;将第一数据中心的第一数据库系统表实时同步到第二数据库系统备份表中;当数据中心从第一数据中心切换至第二数据中心时,根据第二数据库系统备份表生成数据库更新脚本;执行数据库更新脚本更新第二数据中心的第二数据库系统表,并将第二数据库系统表实时同步到第一数据库系统备份表中。通过在源数据中心(即第一数据中心)与目标数据中心(即第二数据中心)通过维护一套相同应用脚步,从而确保数据中心切换后保证交易业务的正常处理,具有降低系统运维成本及降低应用开发风险的有益效果。
为了使本领域的技术人员更好的了解本发明,下面列举一个更为详细的实施例,如图2所示,本发明实施例提供一种基于多活分布式架构的数据库复制方法,该方法包括以下步骤:
S201:在第一数据中心创建第一数据库系统备份表,并在第二数据中心创建第二数据库系统备份表。
具体实施时,第一数据中心即源数据中心至少为一个,且第二数据中心即目标数据中心至少为一个,对于同一个数据中心即可以为第一数据中心也可以为第二数据中心。如图3所示,设定源数据中心1为上海国家处理中心(National Processing Center,NPC),目标数据中心1包括无锡NPC及广州NPC,同时广州NPC也作为源数据中心2,目标数据中心2为南京NPC。其中上海NPC是无锡NPC及广州NPC的源数据中心,无锡NPC及广州NPC均作为上海NPC的目标数据中心目标。同时广州NPC还作为南京NPC的源数据中心源,南京NPC作为广州NPC的目标数据中心目标。上海NPC的数据库系统表为数据库系统表1,无锡NPC的数据库系统表为数据库系统表2,广州NPC的数据库系统表为数据库系统表3,南京NPC的数据库系统表为数据库系统表4。
在源数据中心1-上海NPC创建第一数据库系统备份表-数据库系统备份表1,在目标数据中心1-无锡NPC创建第二数据库系统备份表-数据库系统备份表2,在目标数据中心1-广州NPC创建第二数据库系统备份表-数据库系统备份表3,在目标数据中心2-南京NPC创建第二数据库系统备份表-数据库系统备份表4,在源数据中心2-广州NPC创建第一数据库系统备份表-数据库系统备份表5。数据库系统备份表1及数据库系统备份表5由于处于源数据中心,不需要备份其他数据中心的数据,因此为空表。
其中,第一数据库系统备份表的表结构与对应的第二数据库系统表的表结构一致;第二数据库系统备份表的表结构与对应的第一数据库系统表的表结构一致。具体的,数据库系统备份表1及数据库系统备份表3的表结构均与数据库系统表1的表结构一致;数据库系统备份表4的表结构与数据库系统表3的表结构一致。
其中,各第二数据库系统备份表均包括:第一对象及第二对象。具体的,各源数据中心(即第一数据中心)的数据库系统表均包括:表SYSIBM.SYSSEQUENCES及表SYSIBM.SYSSEQUENCESDEP。在目标数据中心(即第二数据中心)创建的各数据库系统备份表均包括:表CCMS.SYSSEQUENCES和表CCMS.SYSSEQUENCESDEP。
其中表CCMS.SYSSEQUENCES包括对象Sequence,表CCMS.SYSSEQUENCESDEP包括对象Identity Column。具体的第一对象为Sequence,第二对象为Identity Column。
S202:将第一数据中心的第一数据库系统表实时同步到第二数据库系统备份表中。
具体实施时,如图3所示,将源数据中心1-上海NPC的数据库系统表1的元数据分别实时同步到对应的目标数据中心1-无锡NPC的数据库系统备份表2及目标数据中心1-广州NPC的数据库系统备份表3中;将源数据中心2-广州NPC的数据库系统表3的元数据实时同步到对应的目标数据中心2-南京NPC的数据库系统备份表4中。
S203:当数据中心从第一数据中心切换至第二数据中心时,根据第二数据库系统备份表生成数据库更新脚本。
具体实施时,如图4所示,设定将第一数据中心即源数据中心1-上海NPC切换到第二数据中心即目标数据中心1-无锡NPC,此时数据中心从上海NPC切换为无锡NPC。在无锡NPC根据数据库系统备份表2生成数据库更新脚本,本发明不以此为限。在数据中心从第一数据中心切换至第二数据中心时,首先暂停将数据库系统表1的元数据实时同步到对应的目标数据中心1-无锡NPC的数据库系统备份表2及目标数据中心1-广州NPC的数据库系统备份表3中,然后根据第二数据库系统备份表生成数据库更新脚本。
步骤S203具体执行过程包括以下步骤:
S301:从第二数据库系统备份表中获取第一对象的数值及第二对象的数值。
具体实施时,根据无锡NPC中的第二数据库系统备份表-数据库系统备份表2中的第一对象Sequence,及第二对象Identity Column,获取第一对象Sequence的元数据信息及第二对象Identity Column的元数据信息。
S302:根据第一对象的数值及第二对象的数值生成数据库更新脚本。
具体实施时,根据第一对象Sequence的元数据信息及第二对象Identity Column的元数据信息生成用于更新无锡NPC的数据库更新脚本。
S204:执行数据库更新脚本更新第二数据中心的第二数据库系统表,并将第二数据库系统表实时同步到第一数据库系统备份表中。
步骤S204具体执行过程包括以下步骤:
S401:执行所述数据库更新脚本更新所述第二数据中心的第二数据库系统表。
具体实施时,执行步骤S302中生成的数据库更新脚本,更新无锡NPC的第二数据库系统表-数据库系统表2,完成数据中心的切换。
S402:将所述第二数据库系统表实时同步到所述第一数据库系统备份表中。
具体实施时,首先清空目标数据中心2的第一数据库系统备份表-数据库系统备份表1及第一数据库系统备份表-数据库系统备份表3中的数据,然后将源数据中心3-无锡NPC的第二数据库系统表-数据库系统表2实时同步到第一数据库系统备份表-数据库系统备份表1及第一数据库系统备份表-数据库系统备份表3,为切换数据中心后的各NPC重新建立备份关系。其中数据库系统备份表1及数据库系统备份表3的表结构与数据库系统表2的表结构一致。
本申请通过将源数据中心的Sequence和Identity Column信息实时同步至目标数据中心的数据库系统备份表中,使得在数据中心切换后,根据数据库系统备份表中的数据重新设置目标数据中心的Sequence和Identity Column取值,避免目标数据中心的数据库Sequence和Identity Column取值重复,从而保证交易业务的正常处理。同时本申请在源数据中心与目标数据中心部署相同应用的原则下,通过高效的技术方法实现DB2Sequence和Identity Column元数据同步,具有降低系统运维成本及降低了应用开发风险的有益效果。
基于与上述基于多活分布式架构的数据库复制方法相同的申请构思,本发明还提供了一种基于多活分布式架构的数据库复制系统,如下面实施例所述。由于该基于多活分布式架构的数据库复制系统解决问题的原理与基于多活分布式架构的数据库复制方法相似,因此该基于多活分布式架构的数据库复制系统的实施可以参见基于多活分布式架构的数据库复制方法的实施,重复之处不再赘述。
图5为本申请实施例的基于多活分布式架构的数据库复制系统的结构示意图,如图5所示,该系统包括:创建单元101、同步单元102、脚本生成单元103及更新单元104。
创建单元101,用于在第一数据中心创建第一数据库系统备份表,并在第二数据中心创建第二数据库系统备份表。
同步单元102,用于将第一数据中心的第一数据库系统表实时同步到第二数据库系统备份表中。
脚本生成单元103,用于根据第二数据库系统备份表生成数据库更新脚本。
更新单元104,用于执行数据库更新脚本更新第二数据中心的第二数据库系统表,并将第二数据库系统表实时同步到第一数据库系统备份表中。
在一个实施例中,第一数据库系统备份表的表结构与第二数据库系统表的表结构一致;第二数据库系统备份表的表结构与第一数据库系统表的表结构一致。
在一个实施例中,第二数据库系统备份表包括:第一对象及第二对象。
在一个实施例中,如图6所示,脚本生成单元103包括:获取模块201及更新模块202。
获取模块201,用于从第二数据库系统备份表中获取第一对象的数值及第二对象的数值。
脚本生成模块202,用于根据第一对象的数值及第二对象的数值生成数据库更新脚本。
在一个实施例中,如图7所示,更新单元104包括:更新模块301及同步模块302。
更新模块301,用于执行数据库更新脚本更新第二数据中心的第二数据库系统表。
同步模块302,用于将第二数据库系统表实时同步到第一数据库系统备份表中。
基于与上述基于多活分布式架构的数据库复制方法相同的申请构思,本申请提供一种计算机设备,如下面实施例所述。由于该计算机设备解决问题的原理与基于多活分布式架构的数据库复制方法相似,因此该计算机设备的实施可以参见基于多活分布式架构的数据库复制方法的实施,重复之处不再赘述。
在一个实施例中,计算机设备包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,如图1所示,所述处理器执行所述计算机程序时实现以下步骤:
S101:在第一数据中心创建第一数据库系统备份表,并在第二数据中心创建第二数据库系统备份表;
S102:将第一数据中心的第一数据库系统表实时同步到第二数据库系统备份表中;
S103:当数据中心从第一数据中心切换至第二数据中心时,根据第二数据库系统备份表生成数据库更新脚本;
S104:执行数据库更新脚本更新第二数据中心的第二数据库系统表,并将第二数据库系统表实时同步到第一数据库系统备份表中。
基于与上述基于多活分布式架构的数据库复制方法相同的申请构思,本申请提供一种计算机可读存储介质,如下面实施例所述。由于该计算机可读存储介质解决问题的原理与基于多活分布式架构的数据库复制方法相似,因此该计算机可读存储介质的实施可以参见基于多活分布式架构的数据库复制方法的实施,重复之处不再赘述。
在一个实施例中,计算机可读存储介质上存储有计算机程序,如图1所示,该计算机程序被处理器执行时实现以下步骤:
S101:在第一数据中心创建第一数据库系统备份表,并在第二数据中心创建第二数据库系统备份表;
S102:将第一数据中心的第一数据库系统表实时同步到第二数据库系统备份表中;
S103:当数据中心从第一数据中心切换至第二数据中心时,根据第二数据库系统备份表生成数据库更新脚本;
S104:执行数据库更新脚本更新第二数据中心的第二数据库系统表,并将第二数据库系统表实时同步到第一数据库系统备份表中。
本发明提供的一种基于多活分布式架构的数据库复制方法及系统,包括:在第一数据中心创建第一数据库系统备份表,并在第二数据中心创建第二数据库系统备份表;将第一数据中心的第一数据库系统表实时同步到第二数据库系统备份表中;当数据中心从第一数据中心切换至第二数据中心时,根据第二数据库系统备份表生成数据库更新脚本;执行数据库更新脚本更新第二数据中心的第二数据库系统表,并将第二数据库系统表实时同步到第一数据库系统备份表中。本申请通过将源数据中心的Sequence和Identity Column信息实时同步至目标数据中心的数据库系统备份表中,使得在数据中心切换后,根据数据库系统备份表中的数据重新设置目标数据中心的Sequence和Identity Column取值,避免目标数据中心的数据库Sequence和Identity Column取值重复,从而保证交易业务的正常处理。同时本申请在源数据中心与目标数据中心部署相同应用的原则下,通过高效的技术方法实现DB2Sequence和Identity Column元数据同步,具有降低系统运维成本及降低了应用开发风险的有益效果。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明中应用了具体实施例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (12)

1.一种基于多活分布式架构的数据库复制方法,其特征在于,包括:
在第一数据中心创建第一数据库系统备份表,并在第二数据中心创建第二数据库系统备份表;
将所述第一数据中心的第一数据库系统表实时同步到所述第二数据库系统备份表中;
当数据中心从所述第一数据中心切换至所述第二数据中心时,根据所述第二数据库系统备份表生成数据库更新脚本;
执行所述数据库更新脚本更新所述第二数据中心的第二数据库系统表,并将所述第二数据库系统表实时同步到所述第一数据库系统备份表中;
所述将所述第一数据中心的第一数据库系统表实时同步到所述第二数据库系统备份表中,包括:
将所述第一数据库系统表中的Sequence和Identity Column实时同步到所述第二数据库系统备份表中;
所述根据所述第二数据库系统备份表生成数据库更新脚本,包括:
根据所述第二数据库系统备份表中的Sequence的元数据信息及Identity Column的元数据信息生成数据库更新脚本。
2.根据权利要求1所述的基于多活分布式架构的数据库复制方法,其特征在于,所述第一数据库系统备份表的表结构与所述第二数据库系统表的表结构一致;所述第二数据库系统备份表的表结构与所述第一数据库系统表的表结构一致。
3.根据权利要求1所述的基于多活分布式架构的数据库复制方法,其特征在于,所述第二数据库系统备份表包括:第一对象及第二对象。
4.根据权利要求3所述的基于多活分布式架构的数据库复制方法,其特征在于,所述根据所述第二数据库系统备份表生成数据库更新脚本,包括:
从所述第二数据库系统备份表中获取所述第一对象的数值及所述第二对象的数值;
根据所述第一对象的数值及所述第二对象的数值生成所述数据库更新脚本。
5.根据权利要求1所述的基于多活分布式架构的数据库复制方法,其特征在于,所述执行所述数据库更新脚本更新所述第二数据中心的第二数据库系统表,并将所述第二数据库系统表实时同步到所述第一数据库系统备份表中,包括:
执行所述数据库更新脚本更新所述第二数据中心的第二数据库系统表;
将所述第二数据库系统表实时同步到所述第一数据库系统备份表中。
6.一种基于多活分布式架构的数据库复制系统,其特征在于,包括:
创建单元,用于在第一数据中心创建第一数据库系统备份表,并在第二数据中心创建第二数据库系统备份表;
同步单元,用于将所述第一数据中心的第一数据库系统表实时同步到所述第二数据库系统备份表中;
脚本生成单元,用于根据所述第二数据库系统备份表生成数据库更新脚本;
更新单元,用于执行所述数据库更新脚本更新所述第二数据中心的第二数据库系统表,并将所述第二数据库系统表实时同步到所述第一数据库系统备份表中;
所述将所述第一数据中心的第一数据库系统表实时同步到所述第二数据库系统备份表中,包括:
将所述第一数据库系统表中的Sequence和Identity Column实时同步到所述第二数据库系统备份表中;
所述根据所述第二数据库系统备份表生成数据库更新脚本,包括:
根据所述第二数据库系统备份表中的Sequence的元数据信息及Identity Column的元数据信息生成数据库更新脚本。
7.根据权利要求6所述的基于多活分布式架构的数据库复制系统,其特征在于,所述第一数据库系统备份表的表结构与所述第二数据库系统表的表结构一致;所述第二数据库系统备份表的表结构与所述第一数据库系统表的表结构一致。
8.根据权利要求6所述的基于多活分布式架构的数据库复制系统,其特征在于,所述第二数据库系统备份表包括:第一对象及第二对象。
9.根据权利要求8所述的基于多活分布式架构的数据库复制系统,其特征在于,所述脚本生成单元包括:
获取模块,用于从所述第二数据库系统备份表中获取所述第一对象的数值及所述第二对象的数值;
脚本生成模块,用于根据所述第一对象的数值及所述第二对象的数值生成所述数据库更新脚本。
10.根据权利要求6所述的基于多活分布式架构的数据库复制系统,其特征在于,所述更新单元包括:
更新模块,用于执行所述数据库更新脚本更新所述第二数据中心的第二数据库系统表;
同步模块,用于将所述第二数据库系统表实时同步到所述第一数据库系统备份表中。
11.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现以下步骤:
在第一数据中心创建第一数据库系统备份表,并在第二数据中心创建第二数据库系统备份表;
将所述第一数据中心的第一数据库系统表实时同步到所述第二数据库系统备份表中;
当数据中心从所述第一数据中心切换至所述第二数据中心时,根据所述第二数据库系统备份表生成数据库更新脚本;
执行所述数据库更新脚本更新所述第二数据中心的第二数据库系统表,并将所述第二数据库系统表实时同步到所述第一数据库系统备份表中;
所述将所述第一数据中心的第一数据库系统表实时同步到所述第二数据库系统备份表中,包括:
将所述第一数据库系统表中的Sequence和Identity Column实时同步到所述第二数据库系统备份表中;
所述根据所述第二数据库系统备份表生成数据库更新脚本,包括:
根据所述第二数据库系统备份表中的Sequence的元数据信息及Identity Column的元数据信息生成数据库更新脚本。
12.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现以下步骤:
在第一数据中心创建第一数据库系统备份表,并在第二数据中心创建第二数据库系统备份表;
将所述第一数据中心的第一数据库系统表实时同步到所述第二数据库系统备份表中;
当数据中心从所述第一数据中心切换至所述第二数据中心时,根据所述第二数据库系统备份表生成数据库更新脚本;
执行所述数据库更新脚本更新所述第二数据中心的第二数据库系统表,并将所述第二数据库系统表实时同步到所述第一数据库系统备份表中;
所述将所述第一数据中心的第一数据库系统表实时同步到所述第二数据库系统备份表中,包括:
将所述第一数据库系统表中的Sequence和Identity Column实时同步到所述第二数据库系统备份表中;
所述根据所述第二数据库系统备份表生成数据库更新脚本,包括:
根据所述第二数据库系统备份表中的Sequence的元数据信息及Identity Column的元数据信息生成数据库更新脚本。
CN201810875524.3A 2018-08-03 2018-08-03 一种基于多活分布式架构的数据库复制方法及系统 Active CN109063135B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810875524.3A CN109063135B (zh) 2018-08-03 2018-08-03 一种基于多活分布式架构的数据库复制方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810875524.3A CN109063135B (zh) 2018-08-03 2018-08-03 一种基于多活分布式架构的数据库复制方法及系统

Publications (2)

Publication Number Publication Date
CN109063135A CN109063135A (zh) 2018-12-21
CN109063135B true CN109063135B (zh) 2021-08-06

Family

ID=64833002

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810875524.3A Active CN109063135B (zh) 2018-08-03 2018-08-03 一种基于多活分布式架构的数据库复制方法及系统

Country Status (1)

Country Link
CN (1) CN109063135B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110941666A (zh) * 2019-11-01 2020-03-31 网联清算有限公司 数据库多活方法及装置
CN111639139B (zh) * 2020-06-04 2024-02-02 中国工商银行股份有限公司 针对数据中心的数据同步方法、装置、计算设备以及介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106354548A (zh) * 2016-08-31 2017-01-25 天津南大通用数据技术股份有限公司 分布式数据库系统中虚拟集群创建、管理方法及装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102402562A (zh) * 2010-09-14 2012-04-04 中兴通讯股份有限公司 数据库异地容灾方法及系统
US8600944B2 (en) * 2010-09-24 2013-12-03 Hitachi Data Systems Corporation System and method for managing integrity in a distributed database
CN103617176B (zh) * 2013-11-04 2017-03-15 广东电子工业研究院有限公司 一种实现多源异构数据资源自动同步的方法
US9460181B2 (en) * 2015-01-23 2016-10-04 Servicenow, Inc. Distributed computing system with resource managed database cloning
CN106341454B (zh) * 2016-08-23 2019-09-24 世纪龙信息网络有限责任公司 跨机房多活分布式数据库管理系统和方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106354548A (zh) * 2016-08-31 2017-01-25 天津南大通用数据技术股份有限公司 分布式数据库系统中虚拟集群创建、管理方法及装置

Also Published As

Publication number Publication date
CN109063135A (zh) 2018-12-21

Similar Documents

Publication Publication Date Title
US8301600B1 (en) Failover recovery in a distributed data store
US8627135B2 (en) Management of a distributed computing system through replication of write ahead logs
US11269902B2 (en) Time series data management method, device, and apparatus
CN111124755B (zh) 集群节点的故障恢复方法、装置、电子设备及存储介质
CN110309161B (zh) 一种数据同步方法、装置及服务器
CN109753511B (zh) 一种大数据平台的跨地域实时同步方法及系统
CN109063135B (zh) 一种基于多活分布式架构的数据库复制方法及系统
CN106375360B (zh) 一种图数据更新方法、装置及系统
CN110837505B (zh) 状态数据存储方法、状态数据同步方法、设备和存储介质
CN107800733B (zh) 分布式系统中会话标识的生成方法及设备
CN111544895B (zh) 排行榜处理方法及装置、电子设备、存储介质
CN102937955A (zh) 一种基于MySQL双存储引擎的内存数据库实现方法
CN110888858A (zh) 数据库的操作方法和装置、存储介质、电子装置
CN105069152A (zh) 数据处理方法及装置
CN104104739A (zh) 一种云存储系统元数据服务集群的数据同步方法
US8612799B2 (en) Method and apparatus of backing up subversion repository
CN110354491B (zh) 全球同服游戏系统、数据同步方法、电子设备及介质
CN110071778B (zh) 一种对时方法、装置、设备及介质
CN116866363A (zh) 分布式文件同步方法、装置、设备及存储介质
CN103780433B (zh) 自愈式虚拟资源配置管理数据架构
CN108881452B (zh) 一种数据同步的方法、装置及存储介质
US20190065327A1 (en) Efficient versioned object management
CN111737348B (zh) 基于数据库表的时效同步方法及装置
CN103327105A (zh) hadoop系统中从属节点服务自动恢复方法
CN111966650A (zh) 一种运维大数据共享数据表的处理方法、装置及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant