CN109189613A - 一种数据库数据恢复方法及相关装置 - Google Patents
一种数据库数据恢复方法及相关装置 Download PDFInfo
- Publication number
- CN109189613A CN109189613A CN201811101250.9A CN201811101250A CN109189613A CN 109189613 A CN109189613 A CN 109189613A CN 201811101250 A CN201811101250 A CN 201811101250A CN 109189613 A CN109189613 A CN 109189613A
- Authority
- CN
- China
- Prior art keywords
- data
- restored
- recovery
- new
- data recovery
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1458—Management of the backup or restore process
- G06F11/1469—Backup restoration techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/80—Database-specific techniques
Abstract
本申请公开了一种数据库数据恢复方法,包括:将接收到的多组恢复信息进行队列封装处理,得到数据恢复请求;根据数据恢复请求对待恢复实例中的日志进行解析,得到恢复SQL语句;创建新实例,将待恢复实例的数据复制到新实例中,根据恢复SQL语句对新实例的数据进行恢复处理,得到目标实例;根据目标实例对待恢复实例进行恢复数据覆盖处理,以便完成数据库数据恢复操作。通过在新实例中完成对待恢复实例的数据的恢复操作,避免了直接在待恢复实例中进行恢复操作,当数据恢复时间过长时,降低了出现的数据覆盖错误概率,提高了数据恢复的成功率。本申请还公开了一种数据库数据恢复装置、服务器以及计算机可读存储介质,具有以上有益效果。
Description
技术领域
本申请涉及计算机技术领域,特别涉及一种数据库数据恢复方法、数据库数据恢复装置、服务器以及计算机可读存储介质。
背景技术
在数据库技术领域中,通常会出现数据库数据误删除的情况,并且需要对误删除的数据进行恢复。现有技术中通常提供两种数据恢复的方式,一种是让用户选择个别数据表进行恢复,另一种是全库进行恢复。无论两种恢复方式,都是基于数据库自身提供的二进制日志进行数据恢复,将mysql数据库开启binlog日志,mysql会将更改的操作记录在二进制文件中,通过对二进制文件进行解析,得到回滚数据或者重现当时操作的数据。
但是,如果进行数据恢复的数据量比较大时,恢复的时间较长会影响到正常的数据库工作,降低数据恢复的效率,并且有可能在数据库运行的过程中出现错误,导致恢复数据的成功率较低。
因此,如何提高数据库进行数据恢复的效率和成功率是本领域技术人员关注的重点问题。
发明内容
本申请的目的是提供一种数据库数据恢复方法、数据库数据恢复装置、服务器以及计算机可读存储介质,通过在新实例中完成对待恢复实例的数据的恢复操作,避免了直接在待恢复实例中进行恢复操作,当数据恢复时间过长时,降低了出现的数据覆盖错误概率,提高了数据恢复的成功率。
为解决上述技术问题,本申请提供一种数据库数据恢复方法,包括:
将接收到的多组恢复信息进行队列封装处理,得到数据恢复请求;
根据所述数据恢复请求对待恢复实例中的日志进行解析,得到恢复SQL语句;
创建新实例,将所述待恢复实例的数据复制到所述新实例中,根据所述恢复SQL语句对所述新实例的数据进行恢复处理,得到目标实例;
根据所述目标实例对所述待恢复实例进行恢复数据覆盖处理,以便完成数据库数据恢复操作。
可选的,创建新实例,将所述待恢复实例的数据复制到所述新实例中,根据所述恢复SQL语句对所述新实例的数据进行恢复处理,得到目标实例,包括:
创建所述新实例,将所述待恢复实例的数据复制到所述新实例中;
根据所述恢复SQL语句对所述新实例的数据进行恢复处理,得到待确认实例;
根据接收到的恢复确认指令判断所述待确认实例是否正确;
若是,则将所述待确认实例作为所述目标实例。
可选的,根据所述目标实例对所述待恢复实例进行恢复数据覆盖处理,以便完成数据库数据恢复操作,包括:
当所述待恢复实例的数据与所述新实例的数据不相同时,根据所述新实例对所述待恢复实例进行数据变化处理,得到数据变化量;
根据所述数据变化量将所述目标实例和所述待恢复实例进行合并处理,以便完成所述数据库数据恢复操作。
可选的,根据所述目标实例对所述待恢复实例进行恢复数据覆盖处理,以便完成数据库数据恢复操作,包括:
当所述待恢复实例的数据与所述新实例的数据相同时,将所述目标实例的数据覆盖所述待恢复实例的数据,以便完成所述数据库数据恢复操作。
可选的,根据所述目标实例对所述待恢复实例进行恢复数据覆盖处理,以便完成数据库数据恢复操作,包括:
当所述待恢复实例的数据与所述新实例的数据相同时,将所述待恢复实例的数据替换为所述目标实例的数据,以便完成所述数据库数据恢复操作。
可选的,将接收到的多组恢复信息进行队列封装处理,得到数据恢复请求,包括:
将接收到的多组所述恢复信息进行封装处理,得到多个队列数据恢复请求;
将所有所述队列数据恢复请求在队列中进行排队处理,得到当前处理的所述数据恢复请求。
本申请还提供一种数据库数据恢复装置,包括:
恢复请求接收模块,用于将接收到的多组恢复信息进行队列封装处理,得到数据恢复请求;
日志解析模块,用于根据所述数据恢复请求对待恢复实例中的日志进行解析,得到恢复SQL语句;
数据恢复模块,用于创建新实例,将所述待恢复实例的数据复制到所述新实例中,根据所述恢复SQL语句对所述新实例的数据进行恢复处理,得到目标实例;
恢复数据覆盖模块,用于根据所述目标实例对所述待恢复实例进行恢复数据覆盖处理,以便完成数据库数据恢复操作。
可选的,所述数据恢复模块,包括:
新实例获取单元,用于创建所述新实例,将所述待恢复实例的数据复制到所述新实例中;
数据恢复单元,用于根据所述恢复SQL语句对所述新实例的数据进行恢复处理,得到待确认实例;
数据确认判断单元,用于根据接收到的恢复确认指令判断所述待确认实例是否正确;
目标实例获取单元,用于当所述待确认实例正确时,将所述待确认实例作为所述目标实例。
本申请还提供一种服务器,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如以上所述的数据库数据恢复方法的步骤。
本申请还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如以上所述的数据库数据恢复方法的步骤。
本申请所提供的一种数据库数据恢复方法,包括:将接收到的多组恢复信息进行队列封装处理,得到数据恢复请求;根据所述数据恢复请求对待恢复实例中的日志进行解析,得到恢复SQL语句;创建新实例,将所述待恢复实例的数据复制到所述新实例中,根据所述恢复SQL语句对所述新实例的数据进行恢复处理,得到目标实例;根据所述目标实例对所述待恢复实例进行恢复数据覆盖处理,以便完成数据库数据恢复操作。
通过在新实例中完成对待恢复实例的数据的恢复操作,避免了直接在待恢复实例中进行恢复操作,而导致在数据恢复过程中的数据修改和恢复后的数据相冲突造成的恢复错误,并且在大量数据需要恢复的情况下,以新实例进行恢复,不会受到正常流程的影响,降低了出现的数据覆盖错误概率,提高了数据恢复的成功率。
本申请还提供一种数据库数据恢复装置、服务器以及计算机可读存储介质,具有以上有益效果,在此不做赘述。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请实施例所提供的一种数据库数据恢复方法的流程图;
图2为本申请实施例所提供的数据库数据恢复方法的数据恢复处理的流程图;
图3为本申请实施例所提供的一种数据库数据恢复装置的结构示意图。
具体实施方式
本申请的核心是提供一种数据库数据恢复方法、数据库数据恢复装置、服务器以及计算机可读存储介质,通过在新实例中完成对待恢复实例的数据的恢复操作,避免了直接在待恢复实例中进行恢复操作,当数据恢复时间过长时,降低了出现的数据覆盖错误概率,提高了数据恢复的成功率。
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
现有技术提供的数据库数据恢复方法中,对mysql数据库开启binlog日志,mysql会将更改的操作记录在二进制文件中,通过对二进制文件进行解析,得到回滚数据或者重现当时操作的数据,将该数据在覆盖在原数据上,完成对数据的恢复操作。但是,如果进行数据恢复的数据量比较大时,恢复的时间较长会影响到正常的数据库工作,降低数据恢复的效率,并且有可能在数据库运行的过程中出现数据的读写操作,此时将未读写时数据的恢复数据进行覆盖,容易出现数据覆盖错误,降低恢复数据的成功率。
因此,本申请实施例提供一种数据库数据恢复方法,通过在新实例中完成对待恢复实例的数据的恢复操作,避免了直接在待恢复实例中进行恢复操作,而导致在数据恢复过程中的数据修改和恢复后的数据相冲突造成的恢复错误,并且在大量数据需要恢复的情况下,以新实例进行恢复,不会受到正常流程的影响,降低了出现的数据覆盖错误概率,提高了数据恢复的成功率。
请参考图1,图1为本申请实施例所提供的一种数据库数据恢复方法的流程图。
该方法可以包括:
S101,将接收到的多组恢复信息进行队列封装处理,得到数据恢复请求;
本步骤主要是将接收到的恢复信息进行封装处理,得到数据恢复请求。但是一般情况下在一次恢复过程中,技术人员会需要多个恢复请求,因此会输入多组恢复信息,每组恢复信息会封装为一个数据恢复请求。其中,每组恢复信息均可以包括恢复的时间、具体的数据库、数据表的信息。
进一步的,在现有技术中当获取到多个数据恢复请求时,会同时处理所有的数据恢复请求。但是当请求数量过多,同时需要恢复的数据量较大时,会出现恢复数据出错的情况,因此,需要将封装得到的数据恢复请求放置在队列中,逐个对数据恢复请求进行处理。
因此,可选的,本步骤可以包括:
将接收到的多组恢复信息进行封装处理,得到多个队列数据恢复请求;
将所有队列数据恢复请求在队列中进行排队处理,得到当前处理的数据恢复请求。
本可选方案也就是将多组的恢复信息进行封装处理,得到多个队列数据恢复请求,也就是将队列数据恢复请求放置在队列中进行排队处理,根据队列的排队顺序得到当前需要处理的数据恢复请求,实现将多个数据恢复请求进行逐个处理的方式。
S102,根据数据恢复请求对待恢复实例中的日志进行解析,得到恢复SQL语句;
在步骤S101的基础上,本步骤旨在根据数据恢复请求对待恢复实例中的日志进行解析,得到恢复SQL语句。
本步骤中待恢复实例就是表述的一个数据库的实例单位,一般的会对该数据库开启相关的数据恢复的功能,之后会在使用该数据库的过程中记录相关的日志,可以通过该日志解析出相应的SQL语句对数据库的数据进行恢复。本步骤中主要就是对日志进行解析得到恢复SQL语句。
S103,创建新实例,将待恢复实例的数据复制到新实例中,根据恢复SQL语句对新实例的数据进行恢复处理,得到目标实例;
在上一步骤的基础上,本步骤旨在根据恢复SQL在新实例中进行数据恢复操作,得到恢复后的另一个数据库实例,即目标实例。
现有技术中通过SQL语句对数据进行恢复的过程,是直接在待恢复实例中进行,当恢复实例在恢复的过程中出现数据修改时,会出现数据恢复错误的情况,降低数据恢复的成功率。因此,本步骤中创建新实例,将待恢复实例的数据复制到新实例中,以便根据SQL语句将数据的恢复操作在新实例中实施,避免了在恢复过程和恢复结束时对待恢复实例的数据影响,降低恢复过程出现的数据错误。
因此,本步骤中首先创建新实例,再将待恢复实例中的数据复制到新实例中,也就是使新实例保存了与待恢复实例相同的数据。并且,创建新实例和复制数据的两个步骤的执行顺序不做限定,可以是S101之前,也可以是S102之前,还可以与S101和S102同时进行。本实施例所呈现的执行步骤只是执行步骤的一种形式。
当将数据复制到新实例之后,就可以根据恢复SQL语句对新实例中的数据进行恢复处理,得到恢复数据后的数据库实例,也就是目标实例。该目标实例中的数据就是数据恢复请求所要恢复的数据。
S104,根据目标实例对待恢复实例进行恢复数据覆盖处理,以便完成数据库数据恢复操作。
在步骤S103的基础上,本步骤旨在根据目标实例对待恢复实例进行恢复数据覆盖处理,以便完成数据库数据恢复操作。也就是将目标实例中的恢复数据覆盖在待恢复实例中。恢复数据进行处理的方式可以是直接覆盖原有的数据,或者替换原有的数据,还可以是当待恢复实例的数据在恢复阶段出现操作时,将待恢复实例的数据和目标实例的数据进行合并操作,以便保留待恢复实例中的做了改变的数据。
可选的,本步骤可以包括:
当待恢复实例的数据与新实例的数据不相同时,根据新实例对待恢复实例进行数据变化处理,得到数据变化量;
根据数据变化量将目标实例和待恢复实例进行合并处理,以便完成数据库数据恢复操作。
本可选方案是将待恢复实例的数据和新实例的数据进行对比,得到两者数据的数据变化量,以便根据该数据变化量将目标实例和待恢复实例进行合并处理,完成数据库数据恢复操作。
本可选方案中,判断待恢复实例的数据和新实例的数据是否相同,主要是判断待恢复实例是否在恢复阶段,进行了数据的修改,以便将待恢复实例的数据修改进行保留,避免数据的丢失,提高数据恢复的成功率。
可选的,本步骤可以包括:
当待恢复实例的数据与新实例的数据相同时,将目标实例的数据覆盖待恢复实例的数据,以便完成数据库数据恢复操作。
本可选方案旨在当待恢复实例的数据和新实例的数据相同时,也就是待恢复实例在数据恢复的过程中没有进行数据修改等操作,因此可以将目标实例中的数据覆盖待恢复实例的数据,以便完成数据库数据恢复操作。同时避免数据恢复引起的数据错误等操作。
可选的,本步骤可以包括:
当待恢复实例的数据与新实例的数据相同时,将待恢复实例的数据替换为目标实例的数据,以便完成数据库数据恢复操作。
本可选方案旨在当待恢复实例的数据和新实例的数据相同时,也就是待恢复实例在数据恢复的过程中没有进行数据修改等操作,可以直接将待恢复实例中的数据替换为目标实例中的数据,完成数据库的数据恢复操作。降低数据迁移带来的资源消耗,提供数据恢复的效率。
综上本实施例,通过在新实例中完成对待恢复实例的数据的恢复操作,避免了直接在待恢复实例中进行恢复操作,而导致在数据恢复过程中的数据修改和恢复后的数据相冲突造成的恢复错误,并且在大量数据需要恢复的情况下,以新实例进行恢复,不会受到正常流程的影响,降低了出现的数据覆盖错误概率,提高了数据恢复的成功率。
上一实施例中的对新实例的数据进行的恢复处理,可以采用现有技术提供的任意一种恢复方法。还可以为了进一步提高数据恢复的成功,可以采用以下提供的一种恢复方法。
请参考图2,图2为本申请实施例所提供的数据库数据恢复方法的数据恢复处理的流程图。
该处理可以包括:
S201,创建新实例,将待恢复实例的数据复制到新实例中;
本步骤旨在创建新实例,并将待恢复实例的数据复制到该新实例中。由于后续需要基于待恢复实例中的数据进行数据恢复,同时需要避免影响待恢复实例,因此,本步骤创建新实例,并复制了待恢复实例的数据,使得可以在新实例进行数据恢复。
S202,根据恢复SQL语句对新实例的数据进行恢复处理,得到待确认实例;
在步骤S201的基础上,本步骤旨在根据恢复SQL语句对新实例进行恢复处理,得到待确认实例。
其中,本步骤的恢复处理可以采用现有技术提供的任意一种恢复方法,在此不做具体限定。
S203,根据接收到的恢复确认指令判断待确认实例是否正确;若是,则执行S204;若否,则执行S202;
在步骤S202的基础上,由于获取到的待确认实例不一定是技术人员直接需要的,或待确认实例可能在恢复时出现错误。因此,本步骤中需要判断该待确认实例是否正确,若是,即可执行后续步骤。
其中,本步骤接收到的恢复确定指令可以是技术人员查看待确认实例后输入的指令,也可以是根据技术人员输入的预期目标进行对比判断得到的恢复确认指令,还可以是与数据库的日志进行判断得到的恢复确认指令。所以,本步骤中的判断方法并不唯一,在此不做具体限定。
S204,将待确认实例作为目标实例。
本步骤旨在将待确认实例作为目标实例,也就是判断通过后获取到可以直接使用的目标实例。
本申请实施例提供了一种数据库数据恢复方法,可以通过在新实例中完成对待恢复实例的数据的恢复操作,避免了直接在待恢复实例中进行恢复操作,而导致在数据恢复过程中的数据修改和恢复后的数据相冲突造成的恢复错误,并且在大量数据需要恢复的情况下,以新实例进行恢复,不会受到正常流程的影响,降低了出现的数据覆盖错误概率,提高了数据恢复的成功率。
下面对本申请实施例提供的一种数据库数据恢复装置进行介绍,下文描述的一种数据库数据恢复方法与上文描述的一种数据库数据恢复装置可相互对应参照。
请参考图3,图3为本申请实施例所提供的一种数据库数据恢复装置的结构示意图。
该装置可以包括:
恢复请求接收模块100,用于将接收到的多组恢复信息进行队列封装处理,得到数据恢复请求;
日志解析模块200,用于根据数据恢复请求对待恢复实例中的日志进行解析,得到恢复SQL语句;
数据恢复模块300,用于创建新实例,将待恢复实例的数据复制到新实例中,根据恢复SQL语句对新实例的数据进行恢复处理,得到目标实例;
恢复数据覆盖模块400,用于根据目标实例对待恢复实例进行恢复数据覆盖处理,以便完成数据库数据恢复操作。
恢复请求模块100中可以使用RabbitMQ消息中间件实现。当用户需要恢复数据时,通过页面选择恢复时间和恢复的数据库,将恢复数据的请求发送到消息队列中进行排队,在底层启动程序监听并接收消息队列中的消息,接收到之后逐个进行处理(可根据服务器配置的大小来确定启动多个监听程序同时接收消息处理)。可以避免服务器因负载太高导致的卡顿或者恢复失败的问题。
日志解析模块200中主要是对binlog日志进行解析操作,得到恢复SQL语句。
数据恢复模块300主要是当接收到数据恢复请求之后,系统会自动寻找要恢复数据时间段内最新的一次备份,然后创建一个临时实例,将最新的备份导入到新实例中。根据用户选择的时间和数据库解析旧实例的binlog日志,生产回滚sql,导入到新实例中(该步骤也全是基于RabbitMQ消息队列的方式)。
可选的,该数据恢复模块300,可以包括:
新实例获取单元,用于创建新实例,将待恢复实例的数据复制到新实例中;
数据恢复单元,用于根据恢复SQL语句对新实例的数据进行恢复处理,得到待确认实例;
数据确认判断单元,用于根据接收到的恢复确认指令判断待确认实例是否正确;
目标实例获取单元,用于当待确认实例正确时,将待确认实例作为目标实例。
基于以上一种数据库数据恢复装置,可以提供以下处理流程:
1、出现意外,部分用户信息被删除;
2、到数据恢复系统中,选择删除用户的大致时间,选择已删用户信息对应数据库名和表名,点击一键恢复,系统将该请求发送至MQ队列中;
3、监听程序接收到请求后,启动一个新MySQL实例,将旧实例中的数据导入到新实例中。同时对旧实例的二进制日志进行解析,得到选择时间范围操作的所有数据,将其导入到新实例中;
4、用户登录到新实例中,检查新实例中是否包含已删的用户信息。
5、如不包含,重复第二步骤,再次确定删除用户信息的时间并进行恢复;如新实例中确定是用户所需要的数据,用户可以点击一键还原到旧实例中。
本申请实施例还提供一种服务器,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如以上实施例所述的数据库数据恢复方法的步骤。
本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如以上实施例所述的数据库数据恢复方法的步骤。
该计算机可读存储介质可以包括:U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上对本申请所提供的一种数据库数据恢复方法、数据库数据恢复装置、服务器以及计算机可读存储介质进行了详细介绍。本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。
Claims (10)
1.一种数据库数据恢复方法,其特征在于,包括:
将接收到的多组恢复信息进行队列封装处理,得到数据恢复请求;
根据所述数据恢复请求对待恢复实例中的日志进行解析,得到恢复SQL语句;
创建新实例,将所述待恢复实例的数据复制到所述新实例中,根据所述恢复SQL语句对所述新实例的数据进行恢复处理,得到目标实例;
根据所述目标实例对所述待恢复实例进行恢复数据覆盖处理,以便完成数据库数据恢复操作。
2.根据权利要求1所述的数据库数据恢复方法,其特征在于,创建新实例,将所述待恢复实例的数据复制到所述新实例中,根据所述恢复SQL语句对所述新实例的数据进行恢复处理,得到目标实例,包括:
创建所述新实例,将所述待恢复实例的数据复制到所述新实例中;
根据所述恢复SQL语句对所述新实例的数据进行恢复处理,得到待确认实例;
根据接收到的恢复确认指令判断所述待确认实例是否正确;
若是,则将所述待确认实例作为所述目标实例。
3.根据权利要求1所述的数据库数据恢复方法,其特征在于,根据所述目标实例对所述待恢复实例进行恢复数据覆盖处理,以便完成数据库数据恢复操作,包括:
当所述待恢复实例的数据与所述新实例的数据不相同时,根据所述新实例对所述待恢复实例进行数据变化处理,得到数据变化量;
根据所述数据变化量将所述目标实例和所述待恢复实例进行合并处理,以便完成所述数据库数据恢复操作。
4.根据权利要求1所述的数据库数据恢复方法,其特征在于,根据所述目标实例对所述待恢复实例进行恢复数据覆盖处理,以便完成数据库数据恢复操作,包括:
当所述待恢复实例的数据与所述新实例的数据相同时,将所述目标实例的数据覆盖所述待恢复实例的数据,以便完成所述数据库数据恢复操作。
5.根据权利要求1所述的数据库数据恢复方法,其特征在于,根据所述目标实例对所述待恢复实例进行恢复数据覆盖处理,以便完成数据库数据恢复操作,包括:
当所述待恢复实例的数据与所述新实例的数据相同时,将所述待恢复实例的数据替换为所述目标实例的数据,以便完成所述数据库数据恢复操作。
6.根据权利要求1至5任一项所述的数据库数据恢复方法,其特征在于,将接收到的多组恢复信息进行队列封装处理,得到数据恢复请求,包括:
将接收到的多组所述恢复信息进行封装处理,得到多个队列数据恢复请求;
将所有所述队列数据恢复请求在队列中进行排队处理,得到当前处理的所述数据恢复请求。
7.一种数据库数据恢复装置,其特征在于,包括:
恢复请求接收模块,用于将接收到的多组恢复信息进行队列封装处理,得到数据恢复请求;
日志解析模块,用于根据所述数据恢复请求对待恢复实例中的日志进行解析,得到恢复SQL语句;
数据恢复模块,用于创建新实例,将所述待恢复实例的数据复制到所述新实例中,根据所述恢复SQL语句对所述新实例的数据进行恢复处理,得到目标实例;
恢复数据覆盖模块,用于根据所述目标实例对所述待恢复实例进行恢复数据覆盖处理,以便完成数据库数据恢复操作。
8.根据权利要求7所述的数据库数据恢复装置,其特征在于,所述数据恢复模块,包括:
新实例获取单元,用于创建所述新实例,将所述待恢复实例的数据复制到所述新实例中;
数据恢复单元,用于根据所述恢复SQL语句对所述新实例的数据进行恢复处理,得到待确认实例;
数据确认判断单元,用于根据接收到的恢复确认指令判断所述待确认实例是否正确;
目标实例获取单元,用于当所述待确认实例正确时,将所述待确认实例作为所述目标实例。
9.一种服务器,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至6任一项所述的数据库数据恢复方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述的数据库数据恢复方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811101250.9A CN109189613A (zh) | 2018-09-20 | 2018-09-20 | 一种数据库数据恢复方法及相关装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811101250.9A CN109189613A (zh) | 2018-09-20 | 2018-09-20 | 一种数据库数据恢复方法及相关装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109189613A true CN109189613A (zh) | 2019-01-11 |
Family
ID=64908994
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811101250.9A Pending CN109189613A (zh) | 2018-09-20 | 2018-09-20 | 一种数据库数据恢复方法及相关装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109189613A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110888760A (zh) * | 2019-11-26 | 2020-03-17 | 中国工商银行股份有限公司 | 数据恢复方法和装置、以及数据处理方法和装置 |
CN111078719A (zh) * | 2019-12-31 | 2020-04-28 | 北京互金新融科技有限公司 | 数据的恢复方法及装置、存储介质和处理器 |
CN111190768A (zh) * | 2019-12-25 | 2020-05-22 | 中科驭数(北京)科技有限公司 | 数据库执行错误恢复方法、数据库访问方法及装置 |
CN111782440A (zh) * | 2020-06-30 | 2020-10-16 | 北京奇艺世纪科技有限公司 | 一种数据处理方法、装置及电子设备 |
CN111913972A (zh) * | 2019-05-10 | 2020-11-10 | 阿里巴巴集团控股有限公司 | 数据处理方法、装置及设备 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130262396A1 (en) * | 2012-03-30 | 2013-10-03 | Commvault Systems, Inc. | Data storage recovery automation |
CN104216802A (zh) * | 2014-09-25 | 2014-12-17 | 北京金山安全软件有限公司 | 一种内存数据库恢复方法和设备 |
US20150081646A1 (en) * | 2013-09-18 | 2015-03-19 | International Business Machines Corporation | Classifying and monitoring database operations based on a cost of recovery |
CN105373448A (zh) * | 2015-10-27 | 2016-03-02 | 北京百度网讯科技有限公司 | 数据库中故障数据的恢复方法和系统 |
CN105955843A (zh) * | 2016-04-21 | 2016-09-21 | 久盈世纪(北京)科技有限公司 | 一种用于数据库恢复的方法与设备 |
CN106126371A (zh) * | 2016-06-15 | 2016-11-16 | 腾讯科技(深圳)有限公司 | 数据回档方法、装置及系统 |
CN106844102A (zh) * | 2017-01-16 | 2017-06-13 | 腾讯科技(深圳)有限公司 | 数据恢复方法和装置 |
US20180157561A1 (en) * | 2016-12-05 | 2018-06-07 | Nutanix, Inc. | Disaster recovery for distributed file servers, including metadata fixers |
-
2018
- 2018-09-20 CN CN201811101250.9A patent/CN109189613A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130262396A1 (en) * | 2012-03-30 | 2013-10-03 | Commvault Systems, Inc. | Data storage recovery automation |
US20150081646A1 (en) * | 2013-09-18 | 2015-03-19 | International Business Machines Corporation | Classifying and monitoring database operations based on a cost of recovery |
CN104216802A (zh) * | 2014-09-25 | 2014-12-17 | 北京金山安全软件有限公司 | 一种内存数据库恢复方法和设备 |
CN105373448A (zh) * | 2015-10-27 | 2016-03-02 | 北京百度网讯科技有限公司 | 数据库中故障数据的恢复方法和系统 |
CN105955843A (zh) * | 2016-04-21 | 2016-09-21 | 久盈世纪(北京)科技有限公司 | 一种用于数据库恢复的方法与设备 |
CN106126371A (zh) * | 2016-06-15 | 2016-11-16 | 腾讯科技(深圳)有限公司 | 数据回档方法、装置及系统 |
US20180157561A1 (en) * | 2016-12-05 | 2018-06-07 | Nutanix, Inc. | Disaster recovery for distributed file servers, including metadata fixers |
CN106844102A (zh) * | 2017-01-16 | 2017-06-13 | 腾讯科技(深圳)有限公司 | 数据恢复方法和装置 |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111913972A (zh) * | 2019-05-10 | 2020-11-10 | 阿里巴巴集团控股有限公司 | 数据处理方法、装置及设备 |
CN110888760A (zh) * | 2019-11-26 | 2020-03-17 | 中国工商银行股份有限公司 | 数据恢复方法和装置、以及数据处理方法和装置 |
CN111190768A (zh) * | 2019-12-25 | 2020-05-22 | 中科驭数(北京)科技有限公司 | 数据库执行错误恢复方法、数据库访问方法及装置 |
CN111190768B (zh) * | 2019-12-25 | 2020-10-16 | 中科驭数(北京)科技有限公司 | 数据库执行错误恢复方法、数据库访问方法及装置 |
CN111078719A (zh) * | 2019-12-31 | 2020-04-28 | 北京互金新融科技有限公司 | 数据的恢复方法及装置、存储介质和处理器 |
CN111782440A (zh) * | 2020-06-30 | 2020-10-16 | 北京奇艺世纪科技有限公司 | 一种数据处理方法、装置及电子设备 |
CN111782440B (zh) * | 2020-06-30 | 2024-03-08 | 北京奇艺世纪科技有限公司 | 一种数据处理方法、装置及电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109189613A (zh) | 一种数据库数据恢复方法及相关装置 | |
CN109960517B (zh) | 镜像文件的制作方法、装置、系统及存储介质 | |
CN107562578B (zh) | 一种存储数据的快照创建方法、装置、设备及存储介质 | |
CN107608820B (zh) | 一种基于纠删码的文件写入方法及相关装置 | |
CN110083379A (zh) | 一种服务器部件升级方法及相关装置 | |
CN110599341A (zh) | 交易调用方法及系统 | |
CN111240807B (zh) | 一种卷启动的虚拟机重建方法、终端及可读存储介质 | |
CN112732300A (zh) | 一种数据包更新方法、装置、电子设备及可读存储介质 | |
KR101654398B1 (ko) | 오퍼레이팅 시스템 상태의 캡처링 및 로딩 | |
CN108664255B (zh) | 一种软件升级方法及装置 | |
CN108932158A (zh) | 一种元数据服务器事务处理的方法、装置及mds服务器 | |
CN104331311A (zh) | 一种升级包生成方法和装置 | |
CN115495436A (zh) | 数据库升级方法及装置 | |
CN112181951B (zh) | 一种异构数据库数据迁移方法、装置及设备 | |
US10877868B2 (en) | Applying a log to storage segments | |
CN109634526B (zh) | 一种基于对象存储的数据操作方法及相关装置 | |
CN113962789A (zh) | 银行对账方法及装置 | |
CN114281798A (zh) | 异构数据库的数据迁移方法、设备及计算机可读介质 | |
US10802715B2 (en) | Mounting a drive to multiple computing systems | |
CN109697216B (zh) | 清算交易信息处理方法、装置及系统 | |
JP2010152707A (ja) | データベースのバックアップ方法及びデータベースシステム | |
US11048664B2 (en) | Log destaging from fixed-size log portion | |
CN112732367A (zh) | 事件流程的处理方法、装置、设备及可读存储介质 | |
US10592329B2 (en) | Method and electronic device for continuing executing procedure being aborted from physical address where error occurs | |
CN108733704B (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190111 |
|
RJ01 | Rejection of invention patent application after publication |