数据恢复方法、装置及、系统及计算机可读存储介质与流程

文档序号:16530996发布日期:2019-01-05 10:45阅读:134来源:国知局
数据恢复方法、装置及、系统及计算机可读存储介质与流程

本发明实施例涉及数据安全技术领域,特别是涉及一种数据恢复方法、装置及、系统及计算机可读存储介质。



背景技术:

随着科技的发展,目前已进入大数据时代,网络数据不断朝着高速换、海量化的方向发展,并且对数据库的要求也越来越高。目前,大量的元数据均存储在数据库中,但是一旦数据库出现故障,就会造成存在数据库中的元数据丢失,导致整个系统失效,造成数据安全隐患。

鉴于此,如何提供一种解决上述技术问题的数据恢复方法、装置、系统和计算机可读存储介质成为本领域技术人员目前需要解决的问题。



技术实现要素:

本发明实施例的目的是提供一种数据恢复方法、装置、系统和计算机可读存储介质,在使用过程中能够对数据库中的元数据进行恢复,避免在数据库故障时出现数据丢失的情况,提高了数据安全性。

为解决上述技术问题,本发明实施例提供了一种数据恢复方法,包括:

对数据库的当前运行状态进行监测,并判断所述数据库是否发生故障,

若是,则依据预设存储区域中预先备份的元数据和操作日志中预先记录的各个操作对所述数据库中的元数据进行恢复;所述操作日志中记录的操作为两次备份之间所执行的所有操作。

可选的,在所述对数据库的当前运行状态进行监测之前,还包括:

定时将数据库中存储的元数据备份至所述预设存储区域中,并将在本次备份结束后至下一次备份完成之前的所有操作记录至所述操作日志中。

可选的,所述将在本次备份结束后至下一次备份完成之前的所有操作记录至所述操作日志中的过程为:

删除所述操作日志中的历史操作,并将在本次备份结束后至下一次备份完成之前的所有操作记录至所述操作日志。

可选的,在所述依据预设存储区域中备份的元数据和操作日志中记录的各个操作对所述数据库中的元数据进行恢复之后,还包括:

启动系统前端应用。

本发明实施例相应的提供了一种数据恢复装置,包括:

监测模块,用于对数据库的当前运行状态进行监测,并判断所述数据库是否发生故障,若是,则触发恢复模块;

所述恢复模块,用于依据预设存储区域中预先备份的元数据和操作日志中预先记录的各个操作对所述数据库中的元数据进行恢复;所述操作日志中记录的操作为两次备份之间所执行的所有操作。

可选的,还包括:

备份模块,用于定时将数据库中存储的元数据备份至所述预设存储区域中;

记录模块,用于将在本次备份结束后至下一次备份完成之前的所有操作记录至所述操作日志中。

可选的,所述记录模块包括:

删除单元,用于删除所述操作日志中的历史操作;

记录单元,用于将在本次备份结束后至下一次备份完成之前的所有操作记录至所述操作日志。

本发明实施例还提供了一种数据恢复系统,包括:

存储器,用于存储计算机程序;

处理器,用于执行所述计算机程序时实现如上述所述数据恢复方法的步骤。

本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述所述数据恢复方法的步骤。

本发明实施例提供了一种数据恢复方法、装置、系统及计算机可读存储介质,包括:对数据库的当前运行状态进行监测,并判断数据库是否发生故障,若是,则依据预设存储区域中预先备份的元数据和操作日志中预先记录的各个操作对数据库中的元数据进行恢复;操作日志中记录的操作为两次备份之间所执行的所有操作。

可见,本申请在数据库故障时可以根据预设存储区域中预先备份好的元数据和操作日志中预先记录的操作对数据库中的元数据进行恢复,从而避免在数据库故障时出现数据丢失的情况,提高了数据安全性。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对现有技术和实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例提供的一种数据恢复方法的流程示意图;

图2为本发明实施例提供的一种数据恢复装置的结构示意图;

图3为本发明实施例提供的一种数据恢复系统的结构示意图。

具体实施方式

本发明实施例提供了一种数据恢复方法、装置、系统和计算机可读存储介质,在使用过程中能够对数据库中的元数据进行恢复,避免在数据库故障时出现数据丢失的情况,提高了数据安全性。

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

请参照图1,图1为本发明实施例提供的一种数据恢复方法的流程示意图。

该方法包括:

s110:对数据库的当前运行状态进行监测,并判断数据库是否发生故障,若是,则进入s120;

可以理解的是,本申请中可以实时对数据库的运行状态进行监测,当数据块的当前运行状态异常时,说明数据库发生故障,此时可能造成数据库当前存储的元数据丢失,使系统失效。

s120:依据预设存储区域中预先备份的元数据和操作日志中预先记录的各个操作对数据库中的元数据进行恢复;操作日志中记录的操作为两次备份之间所执行的所有操作。

具体的,在系统运行过程中数据库中不断有元数据写入,本申请可以对数据库中的元数据进行备份,将备份后的元数据存储至预设存储区域中,并且将本次备份完成后和下一次备份完成之前所执行的各个操作均记录至操作日志中,从而可以当数据库故障时,将预设存储区域中当前存储的元数据回复至数据库中,并根据操作日志中存储的上一次备份完成后到数据库故障之前这段时间所执行的所有操作,对上次备份完成后至数据库故障之前这段时间还没有备份至预设存储区域中的元数据进行恢复,使恢复后的数据库中的元数据是完整的。其中,在根据操作日志中的操作对数据库中的元数据进行恢复时,通过重新执行该操作的方式将执行该操作过程中的所有数据存储至数据库中,以对相应的元数据进行恢复。

还需要说明的是,本申请中的操作日志中记录的操作为两次备份之间所执行的所有操作,其中,若在本次备份完成后至下一次备份开始之前,数据库发生故障,则操作日志中记录的操作具体为本次备份完成后至数据库发生故障的这段时间所执行的所有操作。

进一步的,在上述s110中对数据库的当前运行状态进行监测之前,该方法还包括:

定时将数据库中存储的元数据备份至预设存储区域中,并将在本次备份结束后至下一次备份完成之前的所有操作记录至操作日志中。

具体的,在对数据库中的元数据进行备份时,优选的采用定时备份的方式将数据库中的元数据备份至预设存储区域中,其中,可以在定时为某个闲暇的时间点对数据库中的元数据进行备份,例如夜间0点对数据库中的元数据进行备份,当然,备份周期可以为几天或者几个小时,并且为了避免影响数据库的性能,备份周期不易太短,具体可以根据数据库的具体情况进行确定。另外,由于是定时对数据库中的元数据进行备份,所以在本次备份完成后至下一次备份完成之前,数据库中还会不断的存入元数据,为了防止在此期间数据库故障,导致这段时间内的数据丢失,所以在本次备份完成后,将对数据库的所有操作均记录至操作日志中直至下一次备份完成,以便这段时间数据库发生故障时,可以根据最近一次备份的元数据和操作日志中所记录的自上次备份完成后的所有操作对数据库进行恢复,以使恢复后的数据库中的元数据完整。

更进一步的,将在本次备份结束后至下一次备份完成之前的所有操作记录至操作日志中的过程为:

删除操作日志中的历史操作,并将在本次备份结束后至下一次备份完成之前的所有操作记录至操作日志。

需要说明的是,为了节约空间,可以在每次备份完成后将操作日志中存储的历史操作删除,从而将本次备份完成后的各个新的操作记录至操作日志中,直至下一次备份完成之前一直将新的操作记录至操作日志中。

其中,为了使数据库故障之前一直在运行的系统前端应用恢复运行,本申请可以在依据预设存储区域中备份的元数据和操作日志中记录的各个操作对数据库中的元数据进行恢复之后,启动系统前端应用,具体可以根据数据库故障前操作日志中所记录的操作确定出相应的前端应用,并将相应的前端应用启动。

可见,本申请在数据库故障时可以根据预设存储区域中预先备份好的元数据和操作日志中预先记录的操作对数据库中的元数据进行恢复,从而避免在数据库故障时出现数据丢失的情况,提高了数据安全性。

在上述实施例的基础上,本发明实施例相应的提供了一种数据恢复装置,具体请参照图2。该装置包括:

监测模块21,用于对数据库的当前运行状态进行监测,并判断数据库是否发生故障,若是,则触发恢复模块22;

恢复模块22,用于依据预设存储区域中预先备份的元数据和操作日志中预先记录的各个操作对数据库中的元数据进行恢复;操作日志中记录的操作为两次备份之间所执行的所有操作。

进一步的,该装置还包括:

备份模块,用于定时将数据库中存储的元数据备份至预设存储区域中;

记录模块,用于将在本次备份结束后至下一次备份完成之前的所有操作记录至操作日志中。

进一步的,记录模块包括:

删除单元,用于删除操作日志中的历史操作;

记录单元,用于将在本次备份结束后至下一次备份完成之前的所有操作记录至操作日志。

需要说明的是,本发明实施例中所提供的数据恢复装置具有与上述实施例中所提供的数据恢复方法相同的有益效果,另外,对于本实施例中所涉及到的数据恢复方法的具体介绍请参照上述方法实施例,本申请在此不再赘述。

在上述实施例的基础上,本发明实施例还提供了一种数据恢复系统,具体请参照图3。该系统包括:

存储器31,用于存储计算机程序;

处理器32,用于执行计算机程序时实现如上述数据恢复方法的步骤。

例如,本申请中的处理器32用于实现对数据库的当前运行状态进行监测,并判断数据库是否发生故障,若是,则依据预设存储区域中预先备份的元数据和操作日志中预先记录的各个操作对数据库中的元数据进行恢复;操作日志中记录的操作为两次备份之间所执行的所有操作。

本发明实施例还提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如上述数据恢复方法的步骤。

该计算机可读存储介质可以包括:u盘、移动硬盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。

本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。

还需要说明的是,在本说明书中,诸如术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其他实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1