CN109271442A - 数据库同步恢复方法、装置、计算机可读存储介质和电子设备 - Google Patents
数据库同步恢复方法、装置、计算机可读存储介质和电子设备 Download PDFInfo
- Publication number
- CN109271442A CN109271442A CN201810846566.4A CN201810846566A CN109271442A CN 109271442 A CN109271442 A CN 109271442A CN 201810846566 A CN201810846566 A CN 201810846566A CN 109271442 A CN109271442 A CN 109271442A
- Authority
- CN
- China
- Prior art keywords
- log
- backup
- target database
- database
- synchronization
- 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/1448—Management of the data involved in backup or backup restore
-
- 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
Abstract
本公开涉及一种数据库同步恢复方法、装置、计算机可读存储介质和电子设备,属于计算机数据处理领域,其既能够克服因归档日志被自动清理而无法恢复向目标数据库的同步的缺陷,又能够提升同步过程的恢复效率。该方法包括:从源数据库的归档日志中,筛选与相关业务中尚未被同步到目标数据库的事务有关的日志;在满足预设备份条件时,对筛选出的日志进行备份;在向所述目标数据库的同步被意外中断的情况下,当恢复向所述目标数据库的同步时,依据备份的日志,将所述尚未被同步到目标数据库的事务同步到所述目标数据库。
Description
技术领域
本公开涉及计算机数据处理领域,具体地,涉及一种数据库同步恢复方法、装置、计算机可读存储介质和电子设备。
背景技术
目前,在将源数据库向目标数据库同步的过程中,为了防止突然断电等意外情况导致的数据变化丢失,需要对目标数据库的同步动作的断点进行备份,并在停机重启之后,利用备份的断点来切换到源数据库的归档日志的对应位置处,以便从该位置重新开始对源数据库的归档日志进行分析。
然而,由于数据库的动作变化是以事务为单位的,所以对于耗时比较长的事务而言,现有的同步恢复方案会存在很多的缺陷。以下以图1所示的事务为例进行举例说明。其中,图1示出了现有的同步恢复过程的时间示意图,在该图中,事务1是耗时比较长的事务,其从时间t1开始执行并且需要到时间t6处才能执行完成,事务2是耗时短的事务,其从时间t2处开始执行并且在时间t3处执行完成。
第一个缺陷是,由于在源数据库产生的归档日志量特别多时,所产生的归档日志会被自动清理,因此,有可能会因归档日志被自动清理而无法恢复耗时比较长的事务向目标数据库的同步,进而产生数据库同步恢复错误。参见图1,由于事务1耗时比较长,所以其产生的归档日志量也会比较大,那么如果在时间t5处发生断电而且归档日志刚好在时间t1与t5之间的某一时刻处被自动清理,则在停机重启之后由于归档日志之前被自动清理了而无法恢复事务1向目标数据库的同步。
第二个缺陷是,如果断电发生在耗时比较长的事务的中间动作处,则停机重启之后,需要从该事务的初始动作处重新开始分析归档日志以恢复该事务向目标数据库的同步,所以即使归档日志没有被自动清理,仍然存在同步过程恢复缓慢的缺陷。仍然以图1所示的事务为例进行说明。如果在时间t5处发生断电,则由于在时间t5处事务1尚未完成,所以在停机重启之后,需要从事务1的起始时刻也即时间t1处重新开始对归档日志进行分析,而且虽然在断电之前事务2已经同步完成,但是仍然需要对事务2的日志进行分析,因为事务2的日志是在时间t1之后产生的,所以这大大增加了恢复同步过程时需要重新读取的归档日志的数据量,减缓了同步过程的恢复速度。
发明内容
本公开的目的是提供一种数据库同步恢复方法、装置、计算机可读存储介质和电子设备,既能够克服因归档日志被自动清理而无法恢复向目标数据库的同步的缺陷,又能够提升同步过程的恢复效率。
根据本公开的第一实施例,提供一种数据库同步恢复方法,该方法包括:从源数据库的归档日志中,筛选与相关业务中尚未被同步到目标数据库的事务有关的日志;在满足预设备份条件时,对筛选出的日志进行备份;在向所述目标数据库的同步被意外中断的情况下,当恢复向所述目标数据库的同步时,依据备份的日志,将所述尚未被同步到目标数据库的事务同步到所述目标数据库。
可选地,所述在满足预设备份条件时,对筛选出的日志进行备份,包括:在以下预设备份条件中的至少一者得到满足时,对筛选出的日志进行备份:(1)筛选出的日志所占用的内存量达到预设内存阈值;(2)与前次备份之间的时间间隔达到预设时间间隔阈值。
可选地,在存在多个所述尚未被同步到目标数据库的事务的情况下,所述在满足预设备份条件时,对筛选出的日志进行备份,包括:在满足所述预设备份条件时,将多个所述尚未被同步到目标数据库的事务的筛选出的日志分别备份到不同的备份文件中。
可选地,该方法还包括:删除备份了如下完整事务的日志的备份文件:所述完整事务已经恢复完成了向所述目标数据库的同步。
可选地,所述在向所述目标数据库的同步被意外中断的情况下,当恢复向所述目标数据库的同步时,依据备份的日志,将所述尚未被同步到目标数据库的事务同步到所述目标数据库,包括:在向所述目标数据库的同步被意外中断的情况下,如果存在多个所述尚未被同步到目标数据库的事务,则当恢复向所述目标数据库的同步时,按照多个所述尚未被同步到目标数据库的事务的完成顺序,来依据备份的日志,将多个所述尚未被同步到目标数据库的事务同步到所述目标数据库。
根据本公开的第二实施例,提供一种数据库同步恢复装置,该装置包括:日志筛选模块,用于从源数据库的归档日志中,筛选与相关业务中尚未被同步到目标数据库的事务有关的日志;日志备份模块,用于在满足预设备份条件时,对所述日志筛选模块筛选出的日志进行备份;同步恢复模块,用于在向所述目标数据库的同步被意外中断的情况下,当恢复向所述目标数据库的同步时,依据所述日志备份模块备份的日志,将所述尚未被同步到目标数据库的事务同步到所述目标数据库。
可选地,所述日志备份模块在以下预设备份条件中的至少一者得到满足时,对所述日志筛选模块筛选出的日志进行备份:(1)筛选出的日志所占用的内存量达到预设内存阈值;(2)与前次备份之间的时间间隔达到预设时间间隔阈值。
可选地,所述日志备份模块还用于在存在多个所述尚未被同步到目标数据库的事务的情况下,在满足所述预设备份条件时,将多个所述尚未被同步到目标数据库的事务的筛选出的日志分别备份到不同的备份文件中。
可选地,该装置还包括备份文件删除模块,用于删除备份了如下完整事务的日志的备份文件:所述完整事务已经恢复完成了向所述目标数据库的同步。
可选地,所述同步恢复模块还用于在向所述目标数据库的同步被意外中断的情况下,如果存在多个所述尚未被同步到目标数据库的事务,则当恢复向所述目标数据库的同步时,按照多个所述尚未被同步到目标数据库的事务的完成顺序,来依据备份的日志,将多个所述尚未被同步到目标数据库的事务同步到所述目标数据库。
根据本公开的第三实施例,提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现根据本公开第一实施例中所述方法的步骤。
根据本公开的第四实施例,提供一种电子设备,包括:存储器,其上存储有计算机程序;处理器,用于执行所述存储器中的所述计算机程序,以实现根据本公开第一实施例中所述方法的步骤。
通过采用上述技术方案,由于在恢复向目标数据库的同步过程期间,利用的是从源数据库的归档日志中筛选出的、与相关业务中尚未被同步到目标数据库的事务有关的备份日志,而不是利用源数据库产生的原始归档日志,因此能够克服因归档日志被自动清理而无法恢复同步的缺陷。另外,对于耗时比较长的事务而言,在停机重启之后,会大大减小恢复同步过程时需要重新读取的数据量,提升同步过程的恢复效率。
本公开的其他特征和优点将在随后的具体实施方式部分予以详细说明。
附图说明
附图是用来提供对本公开的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本公开,但并不构成对本公开的限制。在附图中:
图1示出了现有的同步恢复过程的时间示意图。
图2示出了根据本公开一种实施例的数据库同步恢复方法的流程图。
图3示出了根据本公开实施例的同步恢复过程的时间示意图。
图4示出了根据本公开又一实施例的数据库同步恢复方法的流程图。
图5示出了根据本公开又一实施例的数据库同步恢复方法的流程图。
图6示出根据本公开一种实施例的数据库同步恢复装置的示意框图。
图7示出了根据本公开又一实施例的数据库同步恢复装置的示意框图。
图8是根据一示例性实施例示出的一种电子设备的框图。
图9是根据一示例性实施例示出的又一电子设备的框图。
具体实施方式
以下结合附图对本公开的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本公开,并不用于限制本公开。
图2示出了根据本公开一种实施例的数据库同步恢复方法的流程图,如图2所示,该方法可以包括以下步骤S21至S23。
在步骤S21中,从源数据库的归档日志中,筛选与相关业务中尚未被同步到目标数据库的事务有关的日志。
在本公开中,术语“相关业务”是指需要针对哪些业务对目标数据库进行同步。在实际应用场景中,数据库的维护人员通常会配置将哪些业务的哪些数据表的变更数据同步到目标数据库,因此在在步骤S21中进行筛选时也会基于这样的配置来进行筛选。
在步骤S22中,在满足预设备份条件时,对筛选出的日志进行备份。
在步骤S23中,在向所述目标数据库的同步被意外中断的情况下,当恢复向所述目标数据库的同步时,依据备份的日志,将所述尚未被同步到目标数据库的事务同步到所述目标数据库。
在本公开中,“意外中断”是指源数据库向目标数据库的同步过程因意外情况的出现(例如断电等)而被中断了。
另外,在步骤S23中,可以利用任意方式来恢复尚未被同步到目标数据库的事务向目标数据库的同步过程。例如,可以首先对备份的日志进行分析,来确定尚未被同步到目标数据库的事务中的哪些事务是完整事务,然后对这些完整事务的备份日志进行分析,从中提取变更数据,将提取出来的变更数据发送给目标数据库,以便目标数据库利用接收到的变更数据对这些完整事务进行同步。在本公开中,术语“完整事务”是指已经执行完成的事务。例如,某一事务包含N个动作,如果这N个动作均执行完成了,则可以认为该事务是一完整事务。
以图3所示的事务为例进行举例说明,其中图3示出了根据本公开实施例的同步恢复过程的时间示意图,而且图3中的事务与图1中的事务相同。在图3中,在时间t1与t5之间进行了3次关于相关业务中尚未被同步到目标数据库的事务的日志的备份操作,其中:第一次备份操作只备份了关于事务1的日志,因为此时只有事务1在执行;第二次备份操作备份了关于事务1和事务2的日志,因为此时事务1正在执行而且事务2已经执行完成且尚未被同步到目标数据库:第三次备份操作只备份了关于事务1的日志,因为此时事务2已经被同步到了目标数据库,所以在第3次备份操作时无需再对事务2的日志进行备份。然后,如果在时间t4处发生了断电,则停机重启之后,可以基于第2次备份的日志来恢复同步过程。由于第2次备份的日志中备份了已经执行完成且尚未被同步到目标数据库的事务2的日志,所以在恢复同步过程期间,可以基于第2次备份的日志将事务2同步到目标数据库。然后,如果在时间t5处发生了断电,当停机重启之后,就可以基于第3次备份的日志来恢复同步过程。由于第3次备份的日志中没有备份关于事务2的日志,所以相比于现有技术而言,会大大减小恢复向目标数据库的同步过程需要重新读取的数据量,提升同步过程的恢复效率,而且也不会发生因归档日志被自动清理而无法恢复同步的情况。
通过采用上述技术方案,由于在恢复向目标数据库的同步过程期间,利用的是从源数据库的归档日志中筛选出的、与相关业务中尚未被同步到目标数据库的事务有关的备份日志,而不是利用源数据库产生的原始归档日志,因此能够克服因归档日志被自动清理而无法恢复同步的缺陷。另外,对于耗时比较长的事务而言,在停机重启之后,会大大减小恢复同步过程时需要重新读取的数据量,提升同步过程的恢复效率。
在一种可能的实施方式中,步骤S22中所述的在满足预设备份条件时对筛选出的日志进行备份,包括:在以下预设备份条件中的至少一者得到满足时,对筛选出的日志进行备份:(1)筛选出的日志所占用的内存量达到预设内存阈值;(2)与前次备份之间的时间间隔达到预设时间间隔阈值。
例如,如果所有的预设备份条件都没有得到满足,也即例如如果筛选出的日志所占用的内存量既没有达到预设内存阈值而且与前次备份之间的时间间隔也没有达到预设时间间隔阈值,那么就将筛选出的日志先暂时存入缓存中;然后,如果在执行下一次筛选时,所有的预设备份条件还是都没有得到满足,则在缓存中用当前筛选出的日志替换上一次筛选出的日志;然后,如果其中一个预设备份条件得到了满足,例如如果筛选出的日志所占用的内存量达到了预设内存阈值,则将当前筛选出的日志进行备份,例如写入备份存储器中。另外,筛选的操作可以定期执行。
在一种可能的实施方式中,在步骤S22中,在满足预设备份条件的情况下,可以将筛选出的日志备份到一个备份文件里。以图3所示的事务为例,在进行第2次备份操作时,可以将筛选出的关于事务1和事务2的日志都备份到相同的备份文件里,这样在后续的恢复同步过程期间就可以基于同一个备份文件来恢复事务1和事务2向目标数据库的同步。
当然,在存在多个所述尚未被同步到目标数据库的事务的情况下,在满足所述预设备份条件时,可以将多个所述尚未被同步到目标数据库的事务的筛选出的日志分别备份到不同的备份文件中。仍然以图3所示的事务为例,在进行第2次备份操作时,由于存在着事务1和事务2这两个尚未被同步到目标数据库的事务,所以在预设备份条件得到满足的情况下,例如筛选出的事务1的日志所占用的内存量与筛选出的事务2的日志所占用的内存量之和达到了预设内存阈值,则将筛选出的事务1的日志备份到备份文件1中,将筛选出的事务2的日志备份到备份文件2中。这样,就可以对备份文件1和备份文件2进行单独管理。
图4示出了根据本公开又一实施例的数据库同步恢复方法的流程图,如图4所示,该方法可以包括步骤S41至S44。
在步骤S41中,从源数据库的归档日志中,筛选与相关业务中尚未被同步到目标数据库的事务有关的日志。
在步骤S42中,在存在多个所述尚未被同步到目标数据库的事务的情况下,在满足预设备份条件时,将多个所述尚未被同步到目标数据库的事务的筛选出的日志分别备份到不同的备份文件中。这已经在上面进行了详细描述。
在步骤S43中,在向所述目标数据库的同步被意外中断的情况下,当恢复向所述目标数据库的同步时,依据备份的日志,将多个所述尚未被同步到目标数据库的事务同步到目标数据库。
在步骤S44中,删除备份了如下完整事务的日志的备份文件:所述完整事务已经恢复完成了向所述目标数据库的同步。
另外,需要说明的是,步骤S44可以基于步骤S43的触发来执行,也即在执行了步骤S43之后,就在步骤S44中检测是否在步骤S43中有完整事务已经恢复完成了向目标数据库的同步,如果有,则删除备份了该完整事务的日志的备份文件。当然,步骤S44并不是必须在步骤S43之后执行,在实际应用中,步骤S44可以脱离于步骤S41-S43而独立执行,也即在步骤S44中可以定期检测是否有完整事务已经恢复完成了向目标数据库的同步,如果有,则删除备份了该完整事务的日志的备份文件。
通过采用上述技术方案,由于能够在恢复了完整事务向目标数据库的同步之后删除备份了完整事务的日志的备份文件,所以能够精简备份文件,节约存储空间。仍然以图3所示的事务为例,由于在第2次备份操作时将事务1的日志备份到备份文件1中,将事务2的日志备份到备份文件2中,所以如果在时间t4处发生了断电且在停机重启之后在恢复同步过程期间利用步骤S43恢复了事务2向目标数据库的同步,则可以在步骤S44中删除备份文件2,以精简备份文件,节约存储空间。
图5示出了根据本公开又一实施例的数据库同步恢复方法的流程图,如图5所示,该方法可以包括步骤S51至S53。
在步骤S51中,从源数据库的归档日志中,筛选与相关业务中尚未被同步到目标数据库的事务有关的日志;
在步骤S52中,在满足预设备份条件时,对筛选出的日志进行备份;
在步骤S53中,在向所述目标数据库的同步被意外中断的情况下,如果存在多个尚未被同步到目标数据库的事务,则当恢复向所述目标数据库的同步时,按照多个尚未被同步到目标数据库的事务的完成顺序,来依据备份的日志,将多个尚未被同步到目标数据库的事务同步到目标数据库。例如,假设在尚未被同步到目标数据库的事务中,事务2和事务3是已经执行完成的完整事务,而且事务2先于事务3执行完成,则在恢复同步过程期间,首先恢复事务2向目标数据库的同步,然后恢复事务3向目标数据库的同步。
通过按照完整事务的完成顺序来恢复完整事务向目标数据库的同步,能够确保在恢复同步过程期间,将正确的数据同步到目标数据库中。
图6示出根据本公开一种实施例的数据库同步恢复装置的示意框图,如图6所示,该装置60可以包括:
日志筛选模块61,用于从源数据库的归档日志中,筛选与相关业务中尚未被同步到目标数据库的事务有关的日志;
日志备份模块62,用于在满足预设备份条件时,对所述日志筛选模块61筛选出的日志进行备份;
同步恢复模块63,用于在向所述目标数据库的同步被意外中断的情况下,当恢复向所述目标数据库的同步时,依据所述日志备份模块62备份的日志,将所述尚未被同步到目标数据库的事务同步到所述目标数据库。
通过采用上述技术方案,由于在恢复向目标数据库的同步过程期间,利用的是从源数据库的归档日志中筛选出的、与相关业务中尚未被同步到目标数据库的事务有关的备份日志,而不是利用源数据库产生的原始归档日志,因此能够克服因归档日志被自动清理而无法恢复同步的缺陷。另外,对于耗时比较长的事务而言,在停机重启之后,会大大减小恢复同步过程时需要重新读取的数据量,提升同步过程的恢复效率。
可选地,所述日志备份模块62在以下预设备份条件中的至少一者得到满足时,对所述日志筛选模块61筛选出的日志进行备份:
(1)筛选出的日志所占用的内存量达到预设内存阈值;
(2)与前次备份之间的时间间隔达到预设时间间隔阈值。
可选地,所述日志备份模块62还用于在存在多个所述尚未被同步到目标数据库的事务的情况下,在满足所述预设备份条件时,将多个所述尚未被同步到目标数据库的事务的筛选出的日志分别备份到不同的备份文件中。
图7示出了根据本公开又一实施例的数据库同步恢复装置60的示意框图。如图7所示,该装置60还可以包括备份文件删除模块64,用于删除备份了如下完整事务的日志的备份文件,也即所述完整事务已经恢复完成了向所述目标数据库的同步。其中备份文件删除模块64可以在同步恢复模块63的触发下执行删除操作,也即在同步恢复模块63依据备份的日志恢复了所述尚未被同步到目标数据库的事务向目标数据库的同步之后,备份文件删除模块64就检测同步恢复模块63是否已经恢复完成了完整事务向目标数据库的同步,如果是,则删除备份了该完整事务的日志的备份文件。当然,备份文件删除模块64也可以脱离于同步恢复模块63而独立执行删除操作,例如其定期检测是否有完整事务已经恢复完成了向目标数据库的同步,如果有,则删除备份了该完整事务的日志的备份文件。
可选地,所述同步恢复模块63还用于,在向所述目标数据库的同步被意外中断的情况下,如果存在多个所述尚未被同步到目标数据库的事务,则当恢复向所述目标数据库的同步时,按照多个所述尚未被同步到目标数据库的事务的完成顺序,来依据备份的日志,将多个所述尚未被同步到目标数据库的事务同步到目标数据库。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
图8是根据一示例性实施例示出的一种电子设备800的框图。如图8所示,该电子设备800可以包括:处理器801,存储器802。该电子设备800还可以包括多媒体组件803,输入/输出(I/O)接口804,以及通信组件805中的一者或多者。
其中,处理器801用于控制该电子设备800的整体操作,以完成上述的数据库同步恢复方法中的全部或部分步骤。存储器802用于存储各种类型的数据以支持在该电子设备800的操作,这些数据例如可以包括用于在该电子设备800上操作的任何应用程序或方法的指令,以及应用程序相关的数据,例如联系人数据、收发的消息、图片、音频、视频等等。该存储器802可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,例如静态随机存取存储器(Static Random Access Memory,简称SRAM),电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,简称EEPROM),可擦除可编程只读存储器(Erasable Programmable Read-Only Memory,简称EPROM),可编程只读存储器(Programmable Read-Only Memory,简称PROM),只读存储器(Read-Only Memory,简称ROM),磁存储器,快闪存储器,磁盘或光盘。多媒体组件803可以包括屏幕和音频组件。其中屏幕例如可以是触摸屏,音频组件用于输出和/或输入音频信号。例如,音频组件可以包括一个麦克风,麦克风用于接收外部音频信号。所接收的音频信号可以被进一步存储在存储器802或通过通信组件805发送。音频组件还包括至少一个扬声器,用于输出音频信号。I/O接口804为处理器801和其他接口模块之间提供接口,上述其他接口模块可以是键盘,鼠标,按钮等。这些按钮可以是虚拟按钮或者实体按钮。通信组件805用于该电子设备800与其他设备之间进行有线或无线通信。无线通信,例如Wi-Fi,蓝牙,近场通信(Near FieldCommunication,简称NFC),2G、3G或4G,或它们中的一种或几种的组合,因此相应的该通信组件805可以包括:Wi-Fi模块,蓝牙模块,NFC模块。
在一示例性实施例中,电子设备800可以被一个或多个应用专用集成电路(Application Specific Integrated Circuit,简称ASIC)、数字信号处理器(DigitalSignal Processor,简称DSP)、数字信号处理设备(Digital Signal Processing Device,简称DSPD)、可编程逻辑器件(Programmable Logic Device,简称PLD)、现场可编程门阵列(Field Programmable Gate Array,简称FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述的数据库同步恢复方法。
在另一示例性实施例中,还提供了一种包括程序指令的计算机可读存储介质,该程序指令被处理器执行时实现上述的数据库同步恢复方法的步骤。例如,该计算机可读存储介质可以为上述包括程序指令的存储器802,上述程序指令可由电子设备800的处理器801执行以完成上述的数据库同步恢复方法。
图9是根据一示例性实施例示出的一种电子设备900的框图。例如,电子设备900可以被提供为一服务器。参照图9,电子设备900包括处理器922,其数量可以为一个或多个,以及存储器932,用于存储可由处理器922执行的计算机程序。存储器932中存储的计算机程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理器922可以被配置为执行该计算机程序,以执行上述的数据库同步恢复方法。
另外,电子设备900还可以包括电源组件926和通信组件950,该电源组件926可以被配置为执行电子设备900的电源管理,该通信组件950可以被配置为实现电子设备900的通信,例如,有线或无线通信。此外,该电子设备900还可以包括输入/输出(I/O)接口958。电子设备900可以操作基于存储在存储器932的操作系统,例如Windows ServerTM,Mac OSXTM,UnixTM,LinuxTM等等。
在另一示例性实施例中,还提供了一种包括程序指令的计算机可读存储介质,该程序指令被处理器执行时实现上述的数据库同步恢复方法的步骤。例如,该计算机可读存储介质可以为上述包括程序指令的存储器932,上述程序指令可由电子设备900的处理器922执行以完成上述的数据库同步恢复方法。
以上结合附图详细描述了本公开的优选实施方式,但是,本公开并不限于上述实施方式中的具体细节,在本公开的技术构思范围内,可以对本公开的技术方案进行多种简单变型,这些简单变型均属于本公开的保护范围。
另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合。为了避免不必要的重复,本公开对各种可能的组合方式不再另行说明。
此外,本公开的各种不同的实施方式之间也可以进行任意组合,只要其不违背本公开的思想,其同样应当视为本公开所公开的内容。
Claims (10)
1.一种数据库同步恢复方法,其特征在于,该方法包括:
从源数据库的归档日志中,筛选与相关业务中尚未被同步到目标数据库的事务有关的日志;
在满足预设备份条件时,对筛选出的日志进行备份;
在向所述目标数据库的同步被意外中断的情况下,当恢复向所述目标数据库的同步时,依据备份的日志,将所述尚未被同步到目标数据库的事务同步到所述目标数据库。
2.根据权利要求1所述的方法,其特征在于,所述在满足预设备份条件时,对筛选出的日志进行备份,包括:
在以下预设备份条件中的至少一者得到满足时,对筛选出的日志进行备份:
(1)筛选出的日志所占用的内存量达到预设内存阈值;
(2)与前次备份之间的时间间隔达到预设时间间隔阈值。
3.根据权利要求1所述的方法,其特征在于,在存在多个所述尚未被同步到目标数据库的事务的情况下,所述在满足预设备份条件时,对筛选出的日志进行备份,包括:
在满足所述预设备份条件时,将多个所述尚未被同步到目标数据库的事务的筛选出的日志分别备份到不同的备份文件中。
4.根据权利要求3所述的方法,其特征在于,该方法还包括:
删除备份了如下完整事务的日志的备份文件:所述完整事务已经恢复完成了向所述目标数据库的同步。
5.根据权利要求1至4中任一权利要求所述的方法,其特征在于,所述在向所述目标数据库的同步被意外中断的情况下,当恢复向所述目标数据库的同步时,依据备份的日志,将所述尚未被同步到目标数据库的事务同步到所述目标数据库,包括:
在向所述目标数据库的同步被意外中断的情况下,如果存在多个所述尚未被同步到目标数据库的事务,则当恢复向所述目标数据库的同步时,按照多个所述尚未被同步到目标数据库的事务的完成顺序,来依据备份的日志,将多个所述尚未被同步到目标数据库的事务同步到所述目标数据库。
6.一种数据库同步恢复装置,其特征在于,该装置包括:
日志筛选模块,用于从源数据库的归档日志中,筛选与相关业务中尚未被同步到目标数据库的事务有关的日志;
日志备份模块,用于在满足预设备份条件时,对所述日志筛选模块筛选出的日志进行备份;
同步恢复模块,用于在向所述目标数据库的同步被意外中断的情况下,当恢复向所述目标数据库的同步时,依据所述日志备份模块备份的日志,将所述尚未被同步到目标数据库的事务同步到所述目标数据库。
7.根据权利要求6所述的装置,其特征在于,所述日志备份模块在以下预设备份条件中的至少一者得到满足时,对所述日志筛选模块筛选出的日志进行备份:
(1)筛选出的日志所占用的内存量达到预设内存阈值;
(2)与前次备份之间的时间间隔达到预设时间间隔阈值。
8.根据权利要求6所述的装置,其特征在于,该装置还包括备份文件删除模块,用于删除备份了如下完整事务的日志的备份文件:所述完整事务已经恢复完成了向所述目标数据库的同步。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1-5中任一项所述方法的步骤。
10.一种电子设备,其特征在于,包括:
存储器,其上存储有计算机程序;
处理器,用于执行所述存储器中的所述计算机程序,以实现权利要求1-5中任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810846566.4A CN109271442A (zh) | 2018-07-27 | 2018-07-27 | 数据库同步恢复方法、装置、计算机可读存储介质和电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810846566.4A CN109271442A (zh) | 2018-07-27 | 2018-07-27 | 数据库同步恢复方法、装置、计算机可读存储介质和电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109271442A true CN109271442A (zh) | 2019-01-25 |
Family
ID=65153090
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810846566.4A Pending CN109271442A (zh) | 2018-07-27 | 2018-07-27 | 数据库同步恢复方法、装置、计算机可读存储介质和电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109271442A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110442648A (zh) * | 2019-07-30 | 2019-11-12 | 中国工商银行股份有限公司 | 数据同步方法和装置 |
CN111639132A (zh) * | 2020-05-29 | 2020-09-08 | 中国联合网络通信集团有限公司 | 日志同步方法及设备 |
CN115225649A (zh) * | 2022-07-19 | 2022-10-21 | 维沃移动通信有限公司 | 数据同步方法、装置和电子设备 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102004780A (zh) * | 2010-11-23 | 2011-04-06 | 中兴通讯股份有限公司 | 一种数据同步方法及装置 |
CN103064976A (zh) * | 2013-01-14 | 2013-04-24 | 浙江水利水电专科学校 | 基于主动数据库技术的同异构dbms间数据交换方法 |
CN103345470A (zh) * | 2013-05-31 | 2013-10-09 | 深圳市沃信科技有限公司 | 一种数据库容灾方法、系统及服务器 |
CN103699580A (zh) * | 2013-12-03 | 2014-04-02 | 中铁程科技有限责任公司 | 数据库同步方法及装置 |
CN105989139A (zh) * | 2015-02-27 | 2016-10-05 | 阿里巴巴集团控股有限公司 | 一种事务同步方法及设备 |
CN107025242A (zh) * | 2016-02-02 | 2017-08-08 | 南京中兴新软件有限责任公司 | 数据库间数据的复制方法及装置 |
-
2018
- 2018-07-27 CN CN201810846566.4A patent/CN109271442A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102004780A (zh) * | 2010-11-23 | 2011-04-06 | 中兴通讯股份有限公司 | 一种数据同步方法及装置 |
CN103064976A (zh) * | 2013-01-14 | 2013-04-24 | 浙江水利水电专科学校 | 基于主动数据库技术的同异构dbms间数据交换方法 |
CN103345470A (zh) * | 2013-05-31 | 2013-10-09 | 深圳市沃信科技有限公司 | 一种数据库容灾方法、系统及服务器 |
CN103699580A (zh) * | 2013-12-03 | 2014-04-02 | 中铁程科技有限责任公司 | 数据库同步方法及装置 |
CN105989139A (zh) * | 2015-02-27 | 2016-10-05 | 阿里巴巴集团控股有限公司 | 一种事务同步方法及设备 |
CN107025242A (zh) * | 2016-02-02 | 2017-08-08 | 南京中兴新软件有限责任公司 | 数据库间数据的复制方法及装置 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110442648A (zh) * | 2019-07-30 | 2019-11-12 | 中国工商银行股份有限公司 | 数据同步方法和装置 |
CN111639132A (zh) * | 2020-05-29 | 2020-09-08 | 中国联合网络通信集团有限公司 | 日志同步方法及设备 |
CN111639132B (zh) * | 2020-05-29 | 2023-06-06 | 中国联合网络通信集团有限公司 | 日志同步方法及设备 |
CN115225649A (zh) * | 2022-07-19 | 2022-10-21 | 维沃移动通信有限公司 | 数据同步方法、装置和电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106713487B (zh) | 数据的同步方法和装置 | |
CN106610876B (zh) | 数据快照的恢复方法及装置 | |
US20170344433A1 (en) | Apparatus and method for data migration | |
CN109271442A (zh) | 数据库同步恢复方法、装置、计算机可读存储介质和电子设备 | |
US10860447B2 (en) | Database cluster architecture based on dual port solid state disk | |
US20180217901A1 (en) | Job management apparatus, job management method and computer readable medium | |
EP3474143B1 (en) | Method and apparatus for incremental recovery of data | |
CN109739936A (zh) | 数据同步方法、系统、服务器及计算机可读存储介质 | |
US8229892B2 (en) | Storage apparatus and data restoring method used therein | |
CN105487940B (zh) | 灾备端、生产端及两者之间的数据恢复方法 | |
CN104216802B (zh) | 一种内存数据库恢复方法和设备 | |
CN111666266A (zh) | 一种数据迁移方法及相关设备 | |
CN102880530A (zh) | 终端和终端备份及恢复方法 | |
CN104572339A (zh) | 基于分布式文件系统的数据备份还原系统及方法 | |
CN106598703B (zh) | 集成系统的事务补偿方法和装置 | |
CN115687019A (zh) | 数据库集群的故障处理方法、智能监控平台、设备和介质 | |
CN107908370A (zh) | 数据存储方法及装置 | |
CN104216794A (zh) | 用于稿件编辑的灾备方法和装置 | |
US10853202B2 (en) | Method, device and computer readable medium for data synchronization | |
CN109697110B (zh) | 事务协调处理系统、方法、装置及电子设备 | |
JP2006139696A (ja) | データ復元方法、及びデータ復元プログラム | |
CN110413616A (zh) | 一种数据库undo表空间的备份方法与装置 | |
CN105740095A (zh) | 一种恢复出厂设置的方法及装置 | |
JP5180578B2 (ja) | 業務継続システム | |
JP4154900B2 (ja) | 電子交換システムにおける局データ自動復旧方式および方法 |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190125 |