一种数据库灾备系统的制作方法

文档序号:8361309阅读:174来源:国知局
一种数据库灾备系统的制作方法
【技术领域】
[0001]本发明涉及数据库领域,特别涉及一种数据库灾备系统。
【背景技术】
[0002]数据库是所有IT系统的核心,保存了业务系统中运行的完整数据,数据库系统设备崩溃时数据库的日志恢复攸关重要。目前,应对数据库系统设备崩溃的灾备装置多为如图1所示,由两个服务器组成,主服务器primary,从服务器standalone,正常情况下由主服务器对外提供服务,接受应用程序读、写、更改、删除等操作,standalone提供只读操作;如图2所示,主服务器的数据实时复制到从服务器,从服务器接收主服务器的数据,并将其恢复到从数据库内,主服务器跟从服务器的数据始终有一定的差量t'。
[0003]而当主服务器宕机,从服务器继续提供服务,就会发生日志分支的情况,也就是从服务器的日志不是主服务器上数据库的最新日志,而是主服务器宕机时刻接收到的最后的日志处开始运行,所以导致日志发生分支,如图3所示。
这就导致主服务器修复后不能恢复到集群内。
[0004]现有的解决方法是通过恢复最后一次的备份,使其恢复到最后一次备份的时间点,由于最后一次备份时间点肯定比从服务器切换为正常模式的时间点旧(更早一些),所以可以将备份后的数据库加入到集群。但备份数据库所需时间巨大,如20T的数据量,按照目前主流光纤8Gb 计算,20T = 20*1024*1024M = 20971520M,8Gb = 8Gb/8 = IGB = 1024MB,由于光纤包头包尾以及传送效率因素,还要折算成真正传送的速率1024*0.8 = 819.2MB,所以理想情况下的恢复时间需要20*1024*1024/819.2约需要7.1小时恢复时间。这种情况对于关键业务来说是不可接受的。

【发明内容】

[0005]本发明的目的在于克服目前数据库灾备系统数据恢复需要时间过长的问题,提供一种恢复时间极短的数据库灾备系统,包括主服务器与从服务器,所述主服务器和从服务器中均包含有数据库的快照。
[0006]数据库正常运行时,主服务器和从服务器分别间隔预设时间或根据指令对数据库进行快照。
[0007]主服务器发生故障时,由从服务器代替主服务器进行工作。
[0008]主服务器恢复数据时,先将自身数据恢复到故障发生前的指定快照,再从从服务器中将所述指定快照中没有的数据复制至主服务器,主服务器重新加入集群。
[0009]进一步的,数据库正常运行时,从服务器中数据为主服务器中数据通过光纤或以太网实时复制。
[0010]进一步的,数据库正常运行时,主服务器对外接受读、写、改以及删除操作;从服务器仅对外提供只读操作。
[0011]进一步的,主服务器不能正常运行时,立即由从服务器对外提供读、写、改以及删除操作。
[0012]优选的,所述快照为采用ZFS文件系统或vxfs文件系统存储。
与现有技术相比,本发明的有益效果:
[0013]由于针对主、从服务器采取快照技术进行备份,因此本发明可通过任意设定快照间隔时间为不具备备份时间窗口的应用,创造随时都可以进行备份的时间窗口,且不影响数据库以及应用的正常运行。同时在数据库进行恢复时,通过选择恢复至指定快照的方式快速解决日志分支产生的问题。本发明可实现仅对传统数据库灾备设备做较小改动(增加数据库快照)既可快速地融合进当前应用环境用于测试,并且不影响当前系统继续运行。
【附图说明】
:
图1为传统的灾备系统示意图。
[0015]图2为传统的灾备系统主从服务器事务数据存储示意图。
[0016]图3为传统的灾备系统发生宕机后进行数据恢复时发生日志分支示意图。
[0017]图4为本发明提供的数据库灾备系统示意图。
[0018]图5本发明实施例1中主从服务器快照示意图。
[0019]图6为本发明实施例1中主服务器恢复数据示意图。
[0020]图7本发明实施例2中主从服务器快照示意图。
[0021]图8为本发明实施例2中主服务器恢复数据示意图。
【具体实施方式】
[0022]下面结合附图及具体实施例对本发明作进一步的详细描述。但不应将此理解为本发明上述主题的范围仅限于以下的实施例,凡基于本
【发明内容】
所实现的技术均属于本发明的范围。
[0023]实施例1:本发明的目的在于克服目前数据库灾备系统数据恢复需要时间过长的问题,提供一种恢复时间极短的数据库灾备系统,如图4所示,包括主服务器与从服务器,所述主服务器和从服务器中均包含有数据库的快照;(需注意的是,本领域中,主节点、主服务器均指同一技术概念,类似的,从服务器、备用服务器、从节点也为同一技术概念)主服务器与从服务器之间可选择通过光纤或以太网连接在一起,数据库的快照可选择采用ZFS文件系统或vxfs文件系统。
[0024]数据库正常运行时,从服务器中数据为主服务器中数据通过光纤或以太网实时复制;此时,主服务器对外接受对数据库的读、写、改以及删除操作;从服务器仅对外提供只读操作。
[0025]主服务器和从服务器分别间隔预设时间或根据指令对自身的数据库内容进行快照,需要说明的是,由于数据从主服务器传导至从服务器需要一定的时间,因此在同一时亥|J,主服务器与从服务器中数据始终存在一定的差量t'(如图2所示),因此,即使主服务器与从服务器始终在同一时刻对自身数据进行快照,其同一时刻的快照内容也不相同;因此,完全可以根据实际需要来分别设置主服务器与从服务器的快照间隔时间,主服务器的快照间隔时间可以与从服务器的快照间隔时间相同,也可以完全不同(即主服务器可选择与从服务器始终在同一时间进行快照,也可在不同时间进行快照)。
[0026]本实施例中,主服务器和从服务器采用相同的间隔时间分别进行快照(即主服务器和从服务器始终在同一时间进行快照),设定服务器正常运行时,主服务器、从服务器在4个不同时间的快照如图5所示分别为1'1、了2、了3、了4和1'1'、Τ2'、Τ3'、Τ4',此时,主服务器快照与从服务器快照内容均存在差量t',即对于同一时刻的快照Tl和Tl'、T2和T2r、T3和T3,、Τ4和Tf均存在差量C。当主服务器在快照Τ4后发生故障(如宕机)时,由故障发生一刻起,从服务器代替主服务器进行工作;即主服务器不能正常运行时,立即由从服务器对外提供数据库读、写、改以及删除操作,且从服务器依然按照原预设的间隔时间进行快照并产生快照Τ5'(如图6所示)。
[0027]而主服务器修复后,需要重新加入集群,此时需要先对主服务进行数据恢复,恢复步骤如下:
(I先将主服务器自身数据恢复到故障发生前的指定快照,由于故障发生在快照Τ4之后,理论上可选择Tl、Τ2、Τ3、Τ4中任意一项进行恢复,但由于选择恢复的快照时间越靠前,则需要的数据恢复时间越长,而选择恢复的快照时间过于靠近故障时间时,如恢复到Τ4时,由于Τ4和Τ4'之间数据差量t'的存在,不能消除日志分支问题。因此本实施例中选择恢复到快照T2,即保证选择恢复的快照数据内容早于主服务器故障时的从服务器中数据内容即可。
[0028](2将主服务器快照数据与从服务器中快照数据进行比较,并将从服务器中T2快照时刻以后的数据复制回主服务器,主服务器重新加入集群。
[0029]采用本发明提供的数据库灾备系统所需的数据恢复时间主要为主服务器恢复到指定快照(本实施例中为快照T2)后,主服务器从从服务器中复制该指定快照之后产生的数据;与传统的灾备系统需要将整个数据库数据进行复制相比,仅复制故障前某个时刻之后的数据显然花费时间要少的多。
[0030]实施例2:本实施例与实施例1不同点在于,主服务器与从服务器各自按照自身预设的时间进行快照,如图7所示,在同一时间段内,设定主服务器的快照分别为Tl、T2、T3、T4、T5,从服务器的快照为Tl'、Τ2'、Τ3'、Τ4'。
[0031 ] 本实施例中,而主服务器故障修复后,需要重新加入集群时,此时需要先对主服务进行数据恢复,恢复步骤如下:
(I先将主服务器自身数据恢复到故障发生前的指定快照,假设主服务器在快照Τ5后发生故障,为消除日志分支问题,保证选择恢复的快照数据内容早于主服务器故障时的从服务器中数据内容即可,因此本实施例中将主服务器恢复至快照Τ3(如图8所示)。
[0032](2将主服务器快照数据与从服务器中快照数据进行比较,并将从服务器中Τ3快照时刻以后的数据复制回主服务器,主服务器重新加入集群。
【主权项】
1.一种数据库灾备系统,其特征在于,包括主服务器与从服务器,所述主服务器和从服务器中均包含有数据库的快照; 数据库正常运行时,主服务器和从服务器分别间隔预设时间或根据指令对数据库进行快照; 主服务器发生故障时,由从服务器代替主服务器进行工作; 主服务器恢复数据时,先将自身数据恢复到故障发生前的指定快照,再从从服务器中将所述指定快照中没有的数据复制至主服务器,主服务器重新加入集群。
2.如权利要求1所述的数据库灾备系统,其特征在于,数据库正常运行时,从服务器中数据为主服务器中数据通过光纤或以太网实时复制。
3.如权利要求1所述的数据库灾备系统,其特征在于,数据库正常运行时,主服务器对外接受读、写、改以及删除操作;从服务器仅对外提供只读操作。
4.如权利要求1所述的数据恢灾备系统,其特征在于,主服务器不能正常运行时,立即由从服务器对外提供读、写、改以及删除操作。
5.如权利要求1所述的数据恢灾备系统,其特征在于,所述快照为采用ZFS文件系统或VXfs文件系统存储。
【专利摘要】本发明涉及数据库领域,特别涉及一种数据库灾备系统。包括主服务器与从服务器,所述主服务器和从服务器中均包含有数据库的快照;数据库正常运行时,主服务器和从服务器分别间隔预设时间或根据指令对数据库进行快照;主服务器发生故障时,由从服务器代替主服务器进行工作;主服务器恢复数据时,先将自身数据恢复到故障发生前的指定快照,再从从服务器中将所述指定快照中没有的数据复制至主服务器,主服务器重新加入集群;本发明可为不具备备份时间窗口的应用创造随时都可以进行备份的时间窗口,而且不影响数据库以及应用的正常运行,并可解决日志分支产生的问题,本发明还可快速地融合进当前应用环境用于测试,并且不影响当前系统继续运行。
【IPC分类】G06F11-14, G06F17-30
【公开号】CN104679614
【申请号】CN201510147765
【发明人】朱贤文
【申请人】成都文武信息技术有限公司
【公开日】2015年6月3日
【申请日】2015年3月31日
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1