System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请适用于数据库,尤其涉及一种基于共享集群数据库的同步方法、装置、设备及介质。
技术介绍
1、在共享集群数据库系统中,当某个实例(称该实例为执行实例)修改了非数据页资源的内容并持久化后,虽然文件是实例共享的,但其它实例(称这些实例为接收实例)内存映射中的内容是修改前的状态,这时需要将修改的内容同步到接收实例上,才能保证各个实例上非数据页资源处于一致性状态。其中,在共享集群数据库系统中,把某个实例对区别于数据页的资源修改内容同步到集群系统中其它实例内存映射中的操作称为非数据页资源同步,这类资源包括配置参数文件中的记录、数据库各种文件的元信息数据等。
2、目前,各个实例之间采用网络交互的方式通知接收实例进行内存同步,由网络消息携带修改的具体内容,使得接收大网络消息的实例可以进行内存同步,但是这种同步方式消息类型繁多,消息尺寸大,比较依赖良好的网络环境,尤其当同步发生故障时,从故障状态恢复到各实例一致性状态的处理比较复杂。
3、因此,如何在执行实例内存同步过程中简化网络消息,以降低故障发生后一致性恢复的复杂度成为亟待解决的问题。
技术实现思路
1、有鉴于此,本申请实施例提供了一种基于共享集群数据库的同步方法、装置、设备及介质,以解决如何在执行实例内存同步过程中简化网络消息,以降低故障发生后一致性恢复的复杂度的问题。
2、第一方面,本申请实施例提供一种基于共享集群数据库的同步方法,所述同步方法应用于所述共享集群数据库中任一数据库的数据库实例,所有数据库
3、在所述数据库实例表征接收实例时,获取执行实例在修改所述共享文件后发送的同步消息;
4、根据所述同步消息,对所述共享文件中发生修改的存储区域的内容进行重加载至临时内存;
5、将所述临时内存中的内容与所述数据库实例对应的内存映射中的内容进行比对,得到比对结果;
6、若所述比对结果为存在差异,则根据差异的内容对所述数据库实例的内存映射进行更新,以实现同步。
7、第二方面,本申请实施例提供一种基于共享集群数据库的同步装置,所述同步装置应用于所述共享集群数据库中任一数据库的数据库实例,所有数据库均连接共享文件,包括:
8、获取模块,用于在所述数据库实例表征接收实例时,获取执行实例在修改所述共享文件后发送的同步消息;
9、重加载模块,用于根据所述同步消息,对所述共享文件中发生修改的存储区域的内容进行重加载至临时内存;
10、比对模块,用于将所述临时内存中的内容与所述数据库实例对应的内存映射中的内容进行比对,得到比对结果;
11、同步模块,用于若所述比对结果为存在差异,则根据差异的内容对所述数据库实例的内存映射进行更新,以实现同步。
12、第三方面,本申请实施例提供一种计算机设备,所述计算机设备包括处理器、存储器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如第一方面所述的同步方法。
13、第四方面,本申请实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如第一方面所述的同步方法。
14、本申请实施例与现有技术相比存在的有益效果是:本申请中的同步方法应用于共享集群数据库中任一数据库的数据库实例,数据库均连接共享文件,在数据库实例表征接收实例时,获取执行实例在修改共享文件后发送的同步消息,根据同步消息,对共享文件中发生修改的存储区域的内容进行重加载至临时内存,将临时内存中的内容与数据库实例对应的内存映射中的内容进行比对,得到比对结果,若比对结果为存在差异,则根据差异的内容对数据库实例的内存映射进行更新,以实现同步,该过程中无需传播原始数据,从而简化了网络消息,在实例的自身内存中即可完成更新同步,故障时和故障后仍可根据同步消息进行同步,有效地降低了故障发生后一致性恢复的复杂度。
本文档来自技高网...【技术保护点】
1.一种基于共享集群数据库的同步方法,其特征在于,所述同步方法应用于所述共享集群数据库中任一数据库的数据库实例,所有数据库均连接共享文件,包括:
2.根据权利要求1所述的同步方法,其特征在于,所述同步方法还包括:
3.根据权利要求2所述的同步方法,其特征在于,所述根据所述修改执行语句,生成所述同步消息,包括:
4.根据权利要求3所述的同步方法,其特征在于,所述根据所述同步消息,对所述共享文件中发生修改的存储区域的内容进行重加载至临时内存,包括:
5.根据权利要求1所述的同步方法,其特征在于,在所述将所述临时内存中的内容与所述数据库实例对应的内存映射中的内容进行比对,得到比对结果之后,还包括:
6.根据权利要求1所述的同步方法,其特征在于,在所述根据差异的内容对所述数据库实例的内存映射进行更新之后,还包括:
7.根据权利要求1至6任一项所述的同步方法,其特征在于,在所述获取执行实例在修改所述共享文件后发送的同步消息之后,还包括:
8.一种基于共享集群数据库的同步装置,其特征在于,所述同步装置应用于所
9.一种计算机设备,其特征在于,所述计算机设备包括处理器、存储器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如权利要求1至7任一项所述的同步方法。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述的同步方法。
...【技术特征摘要】
1.一种基于共享集群数据库的同步方法,其特征在于,所述同步方法应用于所述共享集群数据库中任一数据库的数据库实例,所有数据库均连接共享文件,包括:
2.根据权利要求1所述的同步方法,其特征在于,所述同步方法还包括:
3.根据权利要求2所述的同步方法,其特征在于,所述根据所述修改执行语句,生成所述同步消息,包括:
4.根据权利要求3所述的同步方法,其特征在于,所述根据所述同步消息,对所述共享文件中发生修改的存储区域的内容进行重加载至临时内存,包括:
5.根据权利要求1所述的同步方法,其特征在于,在所述将所述临时内存中的内容与所述数据库实例对应的内存映射中的内容进行比对,得到比对结果之后,还包括:
6.根据权利要求1所述的同步方法,其特征在于,在所述根据差异的...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。