System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及计算机灾备,尤其涉及一种数据库增量回切方法、装置、设备及存储介质。
技术介绍
1、当源端数据库由于各种原因被损坏,无法维持业务时,为了使业务能够正常运行,则需要将业务切换到备端数据库。当源端数据库修复完成后,需要将备端数据库上承载的业务切换回来,当业务需要从备端数据库切换到源端数据库时,由于备端数据库作为业务数据库已经运行了一段时间,产生了一部分增量数据,并且,在同步备端数据库增量数据到源端数据库这期间,业务端仍在不断产生数据库,如何保证数据一致性,成为一个相当大的难题。
2、上述内容仅用于辅助理解本专利技术的技术方案,并不代表承认上述内容是现有技术。
技术实现思路
1、本专利技术的主要目的在于提供一种数据库增量回切方法、装置、设备及存储介质,旨在解决现有技术将使用备端数据库过程中产生的增量数据后回切至源端数据库导致备端数据库与源端数据库之间无法形成一致性的技术问题。
2、为实现上述目的,本专利技术提供了一种数据库增量回切方法,所述方法包括以下步骤:
3、在发送回切指令至备端数据库时,确定业务系统在所述备端数据库支撑下产生的增量数据,所述回切指令用于将所述备端数据库中备端数据回切到源端数据库支撑业务系统,所述业务系统在所述备端数据库支撑下产生的增量数据是业务系统从由源端数据库支撑,切换至由备端数据库支撑下产生的增量数据;
4、将所述备端数据库的增量数据回切到所述源端数据库;
5、在所述增量数据回切完成时,将所
6、可选地,所述将所述备端数据库的增量数据回切到所述源端数据库,包括:
7、获取所述备端数据库的增量数据中的日志序列号,对所述日志序列号的连续性判断,得到所述备端数据库的增量数据的连续性结果;
8、获取源端数据库的数据写入状态;
9、在所述源端数据库的数据写入状态为不冲突,所述备端数据库的增量数据的连续性结果为连续时,将所述备端数据库的增量数据回切到所述源端数据库。
10、可选地,所述将所述备端数据库的增量数据回切到所述源端数据库,还包括:
11、在所述源端数据库的数据写入状态为冲突,所述备端数据库的增量数据的连续性结果为不连续时,将所述备端数据库的全部数据回切至所述源端数据库;
12、或,将所述备端数据库的增量数据回切到所述源端数据库的数据量大于将所述备端数据库中的全部数据回切到所述源端数据库的数据量时,将所述备端数据库的全部数据回切至所述源端数据库。
13、在所述源端数据库的数据写入状态为冲突,所述备端数据库的增量数据的连续性结果为连续时,确定所述源端数据库中的冲突数据,根据所述冲突数据确定所述备端数据库中对应的备份数据,将所述备份数据替换所述冲突数据;
14、根据所述源端数据库中除所述冲突数据外源端数据确定所述备端数据库中对应的增量数据,将所述备端数据库中对应的增量数据回切至所述源端数据库。
15、可选地,所述将所述备端数据库的增量数据回切到所述源端数据库的数据量大于将所述备端数据库中的全部数据回切到所述源端数据库的数据量时,将所述备端数据库的全部数据回切至所述源端数据库,还包括:
16、获取所述备端数据库的监控线程的操作日志,并根据所述操作日志得到事务信息;
17、对所述事务信息分析,得到所述备端数据库中各个表的增量数据;
18、获取所述备端数据库回切时刻的各个表的全部数据;
19、在所述表的增量数据回切到所述源端数据库的数据量大于所述表的全部数据回切到所述源端数据库的数据量时,将所述表的全部数据回切到所述源端数据库。
20、可选地,所述备端数据库包括备端监控线程,所述源端数据库包括源端监控线程,所述在发送回切指令至备端数据库时,确定业务系统在所述备端数据库支撑下产生的增量数据,包括:
21、在发送切换指令至所述源端数据库时,获取所述源端数据库的第一状态,所述切换指令用于将业务系统从由源端数据库支撑切换为由备端数据库支撑;
22、根据所述源端监控线程监测所述源端数据库的状态监测结果,并根据所述监测结果与所述第一状态得到所述源端数据库的写行为,根据所述写行为与预设写行为比较,得到中间写入状态;
23、在发送回切指令至所述备端数据库时,根据当前的状态检测结果更新所述中间写入状态,并将更新后的中间写入状态输出为所述源端数据库的数据写入状态;
24、获取在发送切换指令至所述备端数据库时,所述备端数据库的第二状态;
25、根据所述备端监控线程监测所述备端数据库中的状态监测结果,并根据所述状态监测结果与所述第二状态得到数据变化量;
26、在发送回切指令至所述备端数据库时,根据当前的状态监测结果更新所述数据变化量,并将更新后的数据变化量输出为所述备端数据库的增量数据。
27、可选地,所述将更新后的数据变化量输出为所述备端数据库的增量数据,包括:
28、根据所述第二状态得到的数据变化量确定事务数据;
29、对所述事务数据合并,得到所述备端数据库的增量数据。
30、可选地,所述对所述事务数据合并,得到所述备端数据库的增量数据,包括:
31、在所述备端数据库为存在归档行为的数据库时,在所述源端数据库同步数据至备端数据库的过程中,关闭备端数据库归档功能;
32、在所述源端数据库切到所述备端数据库之后,开启所述归档功能,所述备端数据库的监控线程读取操作日志,根据所述操作日志得到所述备端数据库的增量数据。
33、此外,为实现上述目的,本专利技术还提出一种数据库增量回切装置,所述数据库增量回切装置包括:
34、数据回切模块,用于在发送回切指令至备端数据库时,确定业务系统在所述备端数据库支撑下产生的增量数据,所述回切指令用于将所述备端数据库中备端数据回切到源端数据库支撑业务系统,所述业务系统在所述备端数据库支撑下产生的增量数据是业务系统从由源端数据库支撑,切换至由备端数据库支撑下产生的增量数据;
35、数据回切模块,还用于将所述备端数据库的增量数据回切到所述源端数据库;
36、业务回切模块,用于在所述增量数据回切完成时,将所述业务系统由备端数据库支撑切换到由所述源端数据库支撑。
37、此外,为实现上述目的,本专利技术还提出一种数据库增量回切设备,所述数据库增量回切设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的数据库增量回切程序,所述数据库增量回切程序配置为实现如上文所述的数据库增量回切方法的步骤。
38、此外,为实现上述目的,本专利技术还提出一种存储介质,所述存储介质上存储有数据库增量回切程序,所述数据库增量回切程序被处理器执行时实现如上文所述的数据库增量回切方法的步骤。
39、本专利技术通过在发送回切指令至本文档来自技高网...
【技术保护点】
1.一种数据库增量回切方法,其特征在于,所述数据库增量回切方法包括:
2.如权利要求1所述的方法,其特征在于,所述将所述备端数据库的增量数据回切到所述源端数据库,包括:
3.如权利要求2所述的方法,其特征在于,所述将所述备端数据库的增量数据回切到所述源端数据库,还包括:
4.如权利要求3所述的方法,其特征在于,所述将所述备端数据库的增量数据回切到所述源端数据库的数据量大于将所述备端数据库中的全部数据回切到所述源端数据库的数据量时,将所述备端数据库的全部数据回切至所述源端数据库,还包括:
5.如权利要求1所述的方法,其特征在于,所述备端数据库包括备端监控线程,所述源端数据库包括源端监控线程,所述在发送回切指令至备端数据库时,确定业务系统在所述备端数据库支撑下产生的增量数据,包括:
6.如权利要求5所述的方法,其特征在于,所述将更新后的数据变化量输出为所述备端数据库的增量数据,包括:
7.如权利要求6所述的方法,其特征在于,所述对所述事务数据合并,得到所述备端数据库的增量数据,包括:
8.一种数据库增
9.一种数据库增量回切设备,其特征在于,所述设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的数据库增量回切程序,所述数据库增量回切程序配置为实现如权利要求1至7中任一项所述的数据库增量回切方法的步骤。
10.一种存储介质,其特征在于,所述存储介质上存储有数据库增量回切程序,所述数据库增量回切程序被处理器执行时实现如权利要求1至7任一项所述的数据库增量回切方法的步骤。
...【技术特征摘要】
1.一种数据库增量回切方法,其特征在于,所述数据库增量回切方法包括:
2.如权利要求1所述的方法,其特征在于,所述将所述备端数据库的增量数据回切到所述源端数据库,包括:
3.如权利要求2所述的方法,其特征在于,所述将所述备端数据库的增量数据回切到所述源端数据库,还包括:
4.如权利要求3所述的方法,其特征在于,所述将所述备端数据库的增量数据回切到所述源端数据库的数据量大于将所述备端数据库中的全部数据回切到所述源端数据库的数据量时,将所述备端数据库的全部数据回切至所述源端数据库,还包括:
5.如权利要求1所述的方法,其特征在于,所述备端数据库包括备端监控线程,所述源端数据库包括源端监控线程,所述在发送回切指令至备端数据库时,确定业务系统在所述备端数据库支撑下产生的增量数据,包...
【专利技术属性】
技术研发人员:周波,
申请(专利权)人:深圳市科力锐科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。