数据的恢复方法、装置、计算机可读存储介质以及处理器制造方法及图纸

技术编号:29789628 阅读:10 留言:0更新日期:2021-08-24 18:08
本申请提供了一种数据的恢复方法、装置、计算机可读存储介质以及处理器,该方法包括:在目标数据库执行预定指令时,对预定指令进行解析,得到目标数据表的名称以及目标字符串,目标字符串包括一一对应的目标字段和目标数值,目标字段至少包括预定指令中的对应字段;在接收到将目标数据库恢复至预定指令之前的恢复请求的情况下,根据预定指令、目标数据表的名称以及目标字符串,生成预定指令对应的恢复指令;执行恢复指令,以使得目标数据库中的数据恢复。该方法无需人工编程,即可实现目标数据表中的数据的自动恢复,降低了对编程人员的要求,提高了数据恢复的效率。

【技术实现步骤摘要】
数据的恢复方法、装置、计算机可读存储介质以及处理器
本申请涉及数据处理领域,具体而言,涉及一种数据的恢复方法、装置、计算机可读存储介质以及处理器。
技术介绍
随着企业业务不断发展,传统的技术架构已经不能满足业务需求,大多数应用系统采用分布式架构,数据分布在多个数据库中,用户一次完整的交互需要跨多库进行操作。为保证分布式事务一致性,需要提供业务补偿恢复机制,一般需要开发人员针对不同的业务场景编写不同的业务逻辑实现补偿操作,这就要求开发人员不仅掌握正常的业务逻辑,同时还需要对补偿流程也要非常熟悉,需要重新编程,不能做到自动化。因此,亟需一种无需编程人员重新编程,自动生成恢复数据的方法,以简化分布式架构下数据的一致性的解决方式。在
技术介绍
部分中公开的以上信息只是用来加强对本文所描述技术的
技术介绍
的理解,因此,
技术介绍
中可能包含某些信息,这些信息对于本领域技术人员来说并未形成在本国已知的现有技术。
技术实现思路
本申请的主要目的在于提供一种数据的恢复方法、装置、计算机可读存储介质以及处理器,以解决现有技术中的数据库业务的数据恢复需要人工编程的问题。根据本专利技术实施例的一个方面,提供了一种数据的恢复方法,包括:在目标数据库执行预定指令时,对所述预定指令进行解析,得到目标数据表的名称以及目标字符串,所述目标字符串包括一一对应的目标字段和目标数值,所述目标字段至少包括所述预定指令中的对应字段;在接收到将所述目标数据库恢复至所述预定指令之前的恢复请求的情况下,根据所述预定指令、所述目标数据表的名称以及所述目标字符串,生成所述预定指令对应的恢复指令;执行所述恢复指令,以使得所述目标数据库中的数据恢复。可选地,对所述预定指令进行解析,得到目标数据表的名称以及目标字符串,包括:解析所述预定指令,得到所述目标数据表的名称;根据所述目标数据表的名称,获取所述目标数据表的表结构;根据所述表结构和所述预定指令,至少确定与所述预定指令中的数值对应的字段为所述目标字段;根据所述预定指令的类型,确定所述目标字段对应的所述目标数值;根据所述目标数值和所述目标字段生成所述目标字符串。可选地,根据所述预定指令的类型,确定所述目标数值,包括:在所述预定指令为插入指令或者删除指令的情况下,确定所述目标数值为所述预定指令中的对应数值。可选地,在所述预定指令为更新指令的情况下,根据所述表结构和所述预定指令,至少确定与所述预定指令中的数值对应的所述字段为所述目标字段,包括:根据所述表结构,确定对应的主键字段以及所有的非主键字段;确定所述主键字段以及所有的所述非主键字段为所述目标字段。可选地,在所述预定指令为更新指令的情况下,根据所述预定指令的类型,确定所述目标字段对应的所述目标数值,包括:确定所述非主键字段对应的目标数值为所述目标数据表中的记录数值;确定所述主键字段对应的第一目标数值,所述第一目标数值为所述目标数据表中的记录数值,根据所述目标数值和所述目标字段生成所述目标字符串,包括:根据所述主键字段和所述第一目标数值生成第一目标字符串;根据所述非主键字段和对应的所述目标数值生成第二目标字符串。可选地,在所述更新指令中修改的字段包括所述主键字段的情况下,根据所述预定指令的类型,确定所述目标字段对应的所述目标数值,还包括:确定所述主键字段对应的第二目标数值,其中,所述第二目标数值为所述更新指令中的对应数值,根据所述目标数值和所述目标字段生成所述目标字符串,还包括:根据所述目标字段和所述第二目标数值生成第三目标字符串。可选地,所述方法还包括:将所述预定指令的名称、所述目标数据表的名称以及所述目标字符串存储至第一辅助数据表。可选地,所述方法还包括:在对所述目标数据库执行所述预定指令时,生成所述预定指令对应的指令编号;将所述指令编号存储至第二辅助数据表。可选地,在接收到将所述目标数据库恢复至所述预定指令之前的恢复请求的情况下,根据所述预定指令、所述目标数据表的名称以及所述目标字符串,生成所述预定指令对应的恢复指令,包括:根据所述恢复请求,从所述第二辅助数据表中获取对应的所述指令编号;根据所述指令编号,从所述第一辅助数据表中提取对应的所述预定指令、所述目标数据表的名称以及所述目标字符串;根据所述预定指令、所述目标数据表的名称以及所述目标字符串,生成所述恢复指令。可选地,所述预定指令和所述恢复指令均为SQL指令。根据本专利技术实施例的另一方面,还提供了一种数据的恢复装置,包括:解析单元,用于在目标数据库执行预定指令时,对所述预定指令进行解析,得到目标数据表的名称以及目标字符串,所述目标字符串包括一一对应的目标字段和目标数值,所述目标字段至少包括所述预定指令中的对应字段;第一生成单元,用于在接收到将所述目标数据库恢复至所述预定指令之前的恢复请求的情况下,根据所述预定指令、所述目标数据表的名称以及所述目标字符串,生成所述预定指令对应的恢复指令;执行单元,用于执行所述恢复指令,以使得所述目标数据库中的数据恢复。根据本专利技术实施例的再一方面,还提供了一种计算机可读存储介质,所述计算机可读存储介质包括存储的程序,其中,所述程序执行任意一种所述的方法。根据本专利技术实施例的又一方面,还提供了一种处理器,所述处理器用于运行程序,其中,所述程序运行时执行任意一种所述的方法。在本专利技术实施例中,上述的恢复方法中,在目标数据库执行预定指令时,对预定指令进行解析,得到预定指令对应执行的目标数据表的名称以及目标字符串;之后,在接收到恢复请求的情况下,根据预定指令、目标数据表的名称以及目标字符串,生成恢复指令;最后,执行恢复指令,将目标数据表的数据恢复至预定指令执行之前的状态。该方法无需人工编程,即可实现目标数据表中的数据的自动恢复,降低了对编程人员的要求,提高了数据恢复的效率。附图说明构成本申请的一部分的说明书附图用来提供对本申请的进一步理解,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:图1示出了根据本申请数据的恢复方法的实施例的流程示意图;以及图2示出了根据本申请数据的恢复装置的实施例的流程示意图。具体实施方式需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。为了使本
的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例。此外,术语“包括”和“具有”以及他们的本文档来自技高网
...

【技术保护点】
1.一种数据的恢复方法,其特征在于,包括:/n在目标数据库执行预定指令时,对所述预定指令进行解析,得到目标数据表的名称以及目标字符串,所述目标字符串包括一一对应的目标字段和目标数值,所述目标字段至少包括所述预定指令中的对应字段;/n在接收到将所述目标数据库恢复至所述预定指令之前的恢复请求的情况下,根据所述预定指令、所述目标数据表的名称以及所述目标字符串,生成所述预定指令对应的恢复指令;/n执行所述恢复指令,以使得所述目标数据库中的数据恢复。/n

【技术特征摘要】
1.一种数据的恢复方法,其特征在于,包括:
在目标数据库执行预定指令时,对所述预定指令进行解析,得到目标数据表的名称以及目标字符串,所述目标字符串包括一一对应的目标字段和目标数值,所述目标字段至少包括所述预定指令中的对应字段;
在接收到将所述目标数据库恢复至所述预定指令之前的恢复请求的情况下,根据所述预定指令、所述目标数据表的名称以及所述目标字符串,生成所述预定指令对应的恢复指令;
执行所述恢复指令,以使得所述目标数据库中的数据恢复。


2.根据权利要求1所述的方法,其特征在于,对所述预定指令进行解析,得到目标数据表的名称以及目标字符串,包括:
解析所述预定指令,得到所述目标数据表的名称;
根据所述目标数据表的名称,获取所述目标数据表的表结构;
根据所述表结构和所述预定指令,至少确定与所述预定指令中的数值对应的字段为所述目标字段;
根据所述预定指令的类型,确定所述目标字段对应的所述目标数值;
根据所述目标数值和所述目标字段生成所述目标字符串。


3.根据权利要求2所述的方法,其特征在于,根据所述预定指令的类型,确定所述目标数值,包括:
在所述预定指令为插入指令或者删除指令的情况下,确定所述目标数值为所述预定指令中的对应数值。


4.根据权利要求2所述的方法,其特征在于,在所述预定指令为更新指令的情况下,根据所述表结构和所述预定指令,至少确定与所述预定指令中的数值对应的所述字段为所述目标字段,包括:
根据所述表结构,确定对应的主键字段以及所有的非主键字段;
确定所述主键字段以及所有的所述非主键字段为所述目标字段。


5.根据权利要求4所述的方法,其特征在于,在所述预定指令为更新指令的情况下,根据所述预定指令的类型,确定所述目标字段对应的所述目标数值,包括:
确定所述非主键字段对应的目标数值为所述目标数据表中的记录数值;
确定所述主键字段对应的第一目标数值,所述第一目标数值为所述目标数据表中的记录数值,
根据所述目标数值和所述目标字段生成所述目标字符串,包括:
根据所述主键字段和所述第一目标数值生成第一目标字符串;
根据所述非主键字段和对应的所述目标数值生成第二目标字符串。


6.根据权利要求5所述的方法,其特征在于,在所述更新指令中修改的字段包括所述主键字段的情况下,
根据所述预...

【专利技术属性】
技术研发人员:胡军锋朱礼华冯志强闫宝旺易程星朱永民
申请(专利权)人:中国邮政储蓄银行股份有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1