基于SQLite数据库的主备同步处理方法及装置制造方法及图纸

技术编号:24409908 阅读:45 留言:0更新日期:2020-06-06 08:43
本发明专利技术提供了一种基于SQLite数据库的主备同步处理方法及装置,其中,该方法包括:第一节点获取第二节点的正式备份文件数据库中上一次文件修改的时间T1;获取所述第一节点的临时文件数据库中上一次文件修改的时间T2;在该时间T1与该时间T2不相等的情况下,将该第二节点的正式备份文件数据库的文件同步到该临时文件数据库中;在该临时文件数据库的文件满足预定条件的情况下,通过该临时文件数据库的文件更新该第一节点的正式备份文件数据库,可以解决相关技术中基于SQL语句修改数据库时生成的修改日志进行主备同步存在异常情况发生时,主备在用数据库均存在同时损坏而无法恢复的风险的问题,针对小型文件数据库,实现双机热备环境下的主备同步。

The method and device of master-slave synchronous processing based on SQLite database

【技术实现步骤摘要】
基于SQLite数据库的主备同步处理方法及装置
本专利技术涉及数据传输领域,具体而言,涉及一种基于SQLite数据库的主备同步处理方法及装置。
技术介绍
视频会议系统中,包含了MCU(多点控制单元)视频会议服务器及硬终端等各类参与设备。终端采集图像声音并经过编码发送给MCU。MCU则根据会议要求将多个终端发送的图像进行融合或不进行融合后发送给各个参与终端。从而实现多方与会人的音视频通话。视频会议系统服务端则往往是一个集群堆叠系统,可有多个信令节点和多个媒体节点组成。信令节点则要进行双机热备,从而实现高可用系统。而双机热备方案中最棘手的一个技术问题就是数据库数据同步。行业视频会议系统中,单个系统接入设备数量往往较少,一般比如接入1000个视频会议终端设备,并发100个会议,已经属于规模较大的了。故此类视频会议系统的数据库需求规模非常小。嵌入在服务器上的文件数据库非常合适此类应用场景。而文件数据库的主备同步则没有很好的可以商业化的方案。相关技术中基于SQL语句修改数据库时生成的修改日志进行主备同步。主机上生成修改日志,同步到备机,然后备机上回放修改日志,以便更新备份数据库。需要主机和备机维护相同的数据库表结构,当系统升级时,数据库表结构也需要一起升级,带来较多的DBA维护工作量和升级模块开发复杂度。增量数据会直接导入备机工作数据库,当断电等异常情况发生时,主备在用数据库均存在同时损坏,无法恢复的风险。主机与备机之间网络不稳定时,备机数据库的完整性和可用性存在风险。针对相关技术中基于SQL语句修改数据库时生成的修改日志进行主备同步存在异常情况发生时,主备在用数据库均存在同时损坏而无法恢复的风险的问题,尚未提出解决方案。
技术实现思路
本专利技术实施例提供了一种基于SQLite数据库的主备同步处理方法及装置,以至少解决相关技术中基于SQL语句修改数据库时生成的修改日志进行主备同步存在异常情况发生时,主备在用数据库均存在同时损坏而无法恢复的风险的问题。根据本专利技术的一个实施例,提供了一种基于SQLite数据库的主备同步处理方法,包括:第一节点获取第二节点的正式备份文件数据库中上一次文件修改的时间T1,其中,所述第一节点为备节点,所述第二节点为主节点;所述第一节点获取所述第一节点的临时文件数据库中上一次文件修改的时间T2;在所述时间T1与所述时间T2不相等的情况下,所述第一节点将所述第二节点的正式备份文件数据库的文件同步到所述临时文件数据库中;在所述临时文件数据库的文件满足预定条件的情况下,所述第一节点通过所述临时文件数据库的文件更新所述第一节点的正式备份文件数据库,其中,所述正式备份文件数据库与所述临时文件数据库均为业务服务不使用的数据库。可选地,在所述临时文件数据库的文件满足预定条件的情况下,所述第一节点通过所述临时文件数据库的文件更新所述第一节点的正式备份文件数据库包括:所述第一节点对所述临时文件数据库的文件进行完整性检查;在通过完整性检查的情况下,所述第一节点将所述临时文件数据库的文件替换掉所述第一节点的正式备份文件数据库的文件;在未通过完整性检查的情况下,所述第一节点删除所述临时文件数据库的文件。可选地,所述方法还包括:在所述第二节点异常且所述第一节点切换为主节点的情况下,所述第一节点将所述第一节点的正式备份文件数据库的文件移动到工作数据库中,其中,所述工作数据库为SQLite文件数据库,且业务服务在线使用的数据库。可选地,所述第一节点将所述第一节点的正式备份文件数据库的文件移动到工作数据库中之后,所述方法还包括:所述第一节点获取所述工作数据库中上一次文件修改的时间T3以及所述临时文件数据中上一次文件备份的时间T4;在所述时间T3不等于所述时间T4的情况下,所述第一节点将所述工作数据库的内容备份到所述临时文件数据库中;在所述临时文件数据库的文件满足所述预定条件的情况下,所述第一节点通过所述临时文件数据库的文件更新所述正式备份文件数据库。可选地,在所述临时文件数据库的文件满足所述预定条件的情况下,所述第一节点通过所述临时文件数据库的文件更新所述正式备份文件数据库包括:所述第一节点对所述临时文件数据库的文件进行完整性检查;在通过完整性检查的情况下,所述第一节点将所述临时文件数据库的文件替换掉所述正式备份文件数据库的文件,并将所述时间T4更新为所述时间T3;在未通过完整性检查的情况下,所述第一节点删除所述临时文件数据库的文件。可选地,所述第一节点对所述临时文件数据库的文件进行完整性检查包括:所述第一节点通过数据库完整性检查接口对所述临时文件数据库的文件进行完整性检查。根据本专利技术的另一个实施例,还提供了一种基于SQLite数据库的主备同步处理装置,应用于第一节点,包括:第一获取模块,用于获取第二节点的正式备份文件数据库中上一次文件修改的时间T1,其中,所述第一节点为备节点,所述第二节点为主节点;第二获取模块,用于获取所述第一节点的临时文件数据库中上一次文件修改的时间T2;同步模块,用于在所述时间T1与所述时间T2不相等的情况下,将所述第二节点的正式备份文件数据库的文件同步到所述第一节点的临时文件数据库中;第一更新模块,用于在所述临时文件数据库的文件满足预定条件的情况下,通过所述临时文件数据库的文件更新所述第一节点的正式备份文件数据库,其中,所述正式备份文件数据库与所述临时文件数据库均为业务服务不使用的数据库。可选地,所述第一更新模块包括:检查子模块,用于对所述临时文件数据库的文件进行完整性检查;替换子模块,用于在通过完整性检查的情况下,将所述临时文件数据库的文件替换掉所述第一节点的正式备份文件数据库的文件;删除子模块,用于在未通过完整性检查的情况下,删除所述临时文件数据库的文件。可选地,所述装置还包括:移动模块,用于在所述第二节点异常且所述第一节点切换为主节点的情况下,将所述第一节点的正式备份文件数据库的文件移动到工作数据库中,其中,所述工作数据库为SQLite文件数据库,且业务服务在线使用的数据库。可选地,所述装置还包括:第三获取模块,用于获取所述工作数据库中上一次文件修改的时间T3以及所述临时文件数据中上一次文件备份的时间T4;备份模块,用于在所述时间T3不等于所述时间T4的情况下,将所述工作数据库的内容备份到所述临时文件数据库中;第二更新模块,用于在所述临时文件数据库的文件满足所述预定条件的情况下,通过所述临时文件数据库的文件更新所述正式备份文件数据库。可选地,所述第二更新模块包括:检查子模块,用于对所述临时文件数据库的文件进行完整性检查;更新子模块,用于在通过完整性检查的情况下,将所述临时文件数据库的文件替换掉所述正式备份文件数据库的文件,并将所述时间T4更新为所述时间T3;删除本文档来自技高网
...

【技术保护点】
1.一种基于SQLite数据库的主备同步处理方法,其特征在于,包括:/n第一节点获取第二节点的正式备份文件数据库中上一次文件修改的时间T1,其中,所述第一节点为备节点,所述第二节点为主节点;/n所述第一节点获取所述第一节点的临时文件数据库中上一次文件修改的时间T2;/n在所述时间T1与所述时间T2不相等的情况下,所述第一节点将所述第二节点的正式备份文件数据库的文件同步到所述临时文件数据库中;/n在所述临时文件数据库的文件满足预定条件的情况下,所述第一节点通过所述临时文件数据库的文件更新所述第一节点的正式备份文件数据库,其中,所述正式备份文件数据库与所述临时文件数据库均为业务服务不使用的数据库。/n

【技术特征摘要】
1.一种基于SQLite数据库的主备同步处理方法,其特征在于,包括:
第一节点获取第二节点的正式备份文件数据库中上一次文件修改的时间T1,其中,所述第一节点为备节点,所述第二节点为主节点;
所述第一节点获取所述第一节点的临时文件数据库中上一次文件修改的时间T2;
在所述时间T1与所述时间T2不相等的情况下,所述第一节点将所述第二节点的正式备份文件数据库的文件同步到所述临时文件数据库中;
在所述临时文件数据库的文件满足预定条件的情况下,所述第一节点通过所述临时文件数据库的文件更新所述第一节点的正式备份文件数据库,其中,所述正式备份文件数据库与所述临时文件数据库均为业务服务不使用的数据库。


2.根据权利要求1所述的方法,其特征在于,在所述临时文件数据库的文件满足预定条件的情况下,所述第一节点通过所述临时文件数据库的文件更新所述第一节点的正式备份文件数据库包括:
所述第一节点对所述临时文件数据库的文件进行完整性检查;
在通过完整性检查的情况下,所述第一节点将所述临时文件数据库的文件替换掉所述第一节点的正式备份文件数据库的文件;
在未通过完整性检查的情况下,所述第一节点删除所述临时文件数据库的文件。


3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在所述第二节点异常且所述第一节点切换为主节点的情况下,所述第一节点将所述第一节点的正式备份文件数据库的文件移动到工作数据库中,其中,所述工作数据库为SQLite文件数据库,且业务服务在线使用的数据库。


4.根据权利要求3所述的方法,其特征在于,所述第一节点将所述第一节点的正式备份文件数据库的文件移动到工作数据库中之后,所述方法还包括:
所述第一节点获取所述工作数据库中上一次文件修改的时间T3以及所述临时文件数据中上一次文件备份的时间T4;
在所述时间T3不等于所述时间T4的情况下,所述第一节点将所述工作数据库的内容备份到所述临时文件数据库中;
在所述临时文件数据库的文件满足所述预定条件的情况下,所述第一节点通过所述临时文件数据库的文件更新所述正式备份文件数据库。


5.根据权利要求4所述的方法,其特征在于,在所述临时文件数据库的文件满足所述预定条件...

【专利技术属性】
技术研发人员:孙俊伟王克彦
申请(专利权)人:浙江华创视讯科技有限公司
类型:发明
国别省市:浙江;33

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

1