CN105159795A - 数据同步方法、装置和系统 - Google Patents

数据同步方法、装置和系统 Download PDF

Info

Publication number
CN105159795A
CN105159795A CN201510518362.4A CN201510518362A CN105159795A CN 105159795 A CN105159795 A CN 105159795A CN 201510518362 A CN201510518362 A CN 201510518362A CN 105159795 A CN105159795 A CN 105159795A
Authority
CN
China
Prior art keywords
log information
database
write operation
journal file
operation order
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
Application number
CN201510518362.4A
Other languages
English (en)
Inventor
谭国斌
窦锦帅
沈建荣
张旭华
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Xiaomi Technology Co Ltd
Xiaomi Inc
Original Assignee
Xiaomi Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Xiaomi Inc filed Critical Xiaomi Inc
Priority to CN201510518362.4A priority Critical patent/CN105159795A/zh
Publication of CN105159795A publication Critical patent/CN105159795A/zh
Pending legal-status Critical Current

Links

Abstract

本公开是关于一种数据同步方法、装置和系统,属于计算机技术领域。所述方法包括:第一数据库服务器获取对应于第一数据库的写操作命令;将该写操作命令写入第一日志文件中;向第二数据库服务器发送包括该写操作命令的日志信息,第二数据库服务器用于根据该日志信息对第二数据库执行上述写操作命令。本公开解决了相关技术因存在主库与从库中的数据同时丢失的风险,而导致整个数据库系统的可用性较差的问题;避免了两个数据库中的数据完全丢失的风险,保证了整个数据库系统的高可用性。

Description

数据同步方法、装置和系统
技术领域
本公开涉及计算机技术领域,特别涉及一种数据同步方法、装置和系统。
背景技术
Redis数据库是一个开源、支持网络、基于内存的键值对存储数据库,支持多种数据类型和多种操作,具有强大的管理数据的功能。
在相关技术中,Redis数据库系统采用主从模式部署。Redis数据库系统包括主库和从库。其中,主库对外提供数据读写业务,而从库处于备用状态。当主库发生故障时,从库切换为主库,原来的主库在排除故障并重新启动后作为从库。
在主从切换的过程中,存在主库与从库中的数据同时丢失的风险,导致整个数据库系统的可用性较差。
发明内容
为了克服相关技术存在的问题,本公开实施例提供了一种数据同步方法、装置和系统。所述技术方案如下:
根据本公开实施例的第一方面,提供了一种数据同步方法,应用于第一数据库服务器中,所述方法包括:
获取对应于第一数据库的写操作命令;
将所述写操作命令写入第一日志文件中;
向第二数据库服务器发送包括所述写操作命令的日志信息,所述第二数据库服务器用于根据所述日志信息对第二数据库执行所述写操作命令。
可选地,所述向第二数据库服务器发送包括所述写操作命令的日志信息,包括:
获取所述第一日志文件中已同步的日志信息的偏移位置;
根据所述偏移位置确定所述第一日志文件中未同步的日志信息,所述未同步的日志信息包括所述写操作命令;
向所述第二数据库服务器发送所述未同步的日志信息。
可选地,所述方法还包括:
检测所述第一日志文件的剩余存储空间是否小于所述写操作命令的字节大小;
若所述第一日志文件的剩余存储空间小于所述写操作命令的字节大小,则获取所述第一日志文件中的第一目标日志信息;其中,所述第一目标日志信息的字节大小与所述第一日志文件的剩余存储空间之和大于或者等于所述写操作命令的字节大小,且所述第一目标日志信息是所述第一日志文件中最早记录的日志信息;
删除所述第一目标日志信息。
可选地,所述方法还包括:
检测在发出所述日志信息后的预定时段内是否接收到所述第二数据库服务器反馈的成功接收响应,所述成功接收响应用于指示所述第二数据库服务器已成功接收所述日志信息;
若未接收到所述成功接收响应,则向所述第二数据库服务器重发所述日志信息。
根据本公开实施例的第二方面,提供了一种数据同步方法,应用于第二数据库服务器中,所述方法包括:
接收第一数据库服务器发送的日志信息,所述日志信息包括对应于第一数据库的写操作命令;
将所述日志信息写入第二日志文件中;
根据所述日志信息对第二数据库执行所述写操作命令。
可选地,所述方法还包括:
检测所述第二日志文件的剩余存储空间是否小于所述日志信息的字节大小;
若所述第二日志文件的剩余存储空间小于所述日志信息的字节大小,则获取所述第二日志文件中的第二目标日志信息;其中,所述第二目标日志信息的字节大小与所述第二日志文件的剩余存储空间之和大于或者等于所述日志信息的字节大小,且所述第二目标日志信息是所述第二日志文件中最早记录的日志信息;
删除所述第二目标日志信息。
可选地,所述方法还包括:
向所述第一数据库服务器发送成功接收响应,所述成功接收响应用于指示已成功接收所述日志信息。
根据本公开实施例的第三方面,提供了一种数据同步装置,应用于第一数据库服务器中,所述装置包括:
命令获取模块,被配置为获取对应于第一数据库的写操作命令;
命令写入模块,被配置为将所述写操作命令写入第一日志文件中;
日志发送模块,被配置为向第二数据库服务器发送包括所述写操作命令的日志信息,所述第二数据库服务器用于根据所述日志信息对第二数据库执行所述写操作命令。
可选地,所述日志发送模块,包括:
获取子模块,被配置为获取所述第一日志文件中已同步的日志信息的偏移位置;
确定子模块,被配置为根据所述偏移位置确定所述第一日志文件中未同步的日志信息,所述未同步的日志信息包括所述写操作命令;
发送子模块,被配置为向所述第二数据库服务器发送所述未同步的日志信息。
可选地,所述装置还包括:
第一检测模块,被配置为检测所述第一日志文件的剩余存储空间是否小于所述写操作命令的字节大小;
第一获取模块,被配置为在所述第一日志文件的剩余存储空间小于所述写操作命令的字节大小的情况下,获取所述第一日志文件中的第一目标日志信息;其中,所述第一目标日志信息的字节大小与所述第一日志文件的剩余存储空间之和大于或者等于所述写操作命令的字节大小,且所述第一目标日志信息是所述第一日志文件中最早记录的日志信息;
第一删除模块,被配置为删除所述第一目标日志信息。
可选地,所述装置还包括:
响应检测模块,被配置为检测在发出所述日志信息后的预定时段内是否接收到所述第二数据库服务器反馈的成功接收响应,所述成功接收响应用于指示所述第二数据库服务器已成功接收所述日志信息;
日志重发模块,被配置为在未接收到所述成功接收响应的情况下,向所述第二数据库服务器重发所述日志信息。
根据本公开实施例的第四方面,提供了一种数据同步装置,应用于第二数据库服务器中,所述装置包括:
日志接收模块,被配置为接收第一数据库服务器发送的日志信息,所述日志信息包括对应于第一数据库的写操作命令;
日志写入模块,被配置为将所述日志信息写入第二日志文件中;
命令执行模块,被配置为根据所述日志信息对第二数据库执行所述写操作命令。
可选地,所述装置还包括:
第二检测模块,被配置为检测所述第二日志文件的剩余存储空间是否小于所述日志信息的字节大小;
第二获取模块,被配置为在所述第二日志文件的剩余存储空间小于所述日志信息的字节大小的情况下,获取所述第二日志文件中的第二目标日志信息;其中,所述第二目标日志信息的字节大小与所述第二日志文件的剩余存储空间之和大于或者等于所述日志信息的字节大小,且所述第二目标日志信息是所述第二日志文件中最早记录的日志信息;
第二删除模块,被配置为删除所述第二目标日志信息。
可选地,所述装置还包括:
响应发送模块,被配置为向所述第一数据库服务器发送成功接收响应,所述成功接收响应用于指示已成功接收所述日志信息。
根据本公开实施例的第五方面,提供了一种数据同步系统,所述系统包括:第一数据库、第二数据库、与所述第一数据库对应部署的第一数据同步装置以及与所述第二数据库对应部署的第二数据同步装置;
所述第一数据同步装置是如第三方面或者第三方面任一可选实施方式所述的数据同步装置;
所述第二数据同步装置是如第四方面或者第四方面任一可选实施方式所述的数据同步装置。
根据本公开实施例的第六方面,提供了一种数据同步装置,所述装置包括:
处理器;
用于存储所述处理器的可执行指令的存储器;
其中,所述处理器被配置为:
获取对应于第一数据库的写操作命令;
将所述写操作命令写入第一日志文件中;
向第二数据库服务器发送包括所述写操作命令的日志信息,所述第二数据库服务器用于根据所述日志信息对第二数据库执行所述写操作命令。
根据本公开实施例的第七方面,提供了一种数据同步装置,所述装置包括:
处理器;
用于存储所述处理器的可执行指令的存储器;
其中,所述处理器被配置为:
接收第一数据库服务器发送的日志信息,所述日志信息包括对应于第一数据库的写操作命令;
将所述日志信息写入第二日志文件中;
根据所述日志信息对第二数据库执行所述写操作命令。
本公开实施例提供的技术方案可以包括以下有益效果:
通过第一数据库服务器获取对应于第一数据库的写操作命令,并将该写操作命令写入第一日志文件中,然后向第二数据库服务器发送包括该写操作命令的日志信息,使得第二数据库服务器根据该日志信息对第二数据库执行上述写操作命令,完成数据同步备份;解决了相关技术因存在主库与从库中的数据同时丢失的风险,而导致整个数据库系统的可用性较差的问题;避免了两个数据库中的数据完全丢失的风险,保证了整个数据库系统的高可用性。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
图1是根据一示例性实施例示出的一种实施环境的示意图;
图2是根据一示例性实施例示出的一种数据同步方法的流程图;
图3是根据另一示例性实施例示出的一种数据同步方法的流程图;
图4是根据再一示例性实施例示出的一种数据同步方法的流程图;
图5是根据一示例性实施例示出的一种数据同步装置的框图;
图6是根据另一示例性实施例示出的一种数据同步装置的框图;
图7是根据一示例性实施例示出的一种数据同步系统的框图;
图8是根据一示例性实施例示出的一种装置的框图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
图1是根据一示例性实施例示出的一种实施环境的示意图。该实施环境包括:第一数据库服务器120和第二数据库服务器140。第一数据库服务器120和第二数据库服务器140之间可通过有线网络或者无线网络相连。
如图1所示,第一数据库服务器120包括:第一数据库122,以及对应于该第一数据库122部署的第一数据同步装置124。第二数据库服务器140包括:第二数据库142,以及对应于该第二数据库142部署的第二数据同步装置144。第一数据同步装置124和第二数据同步装置144用于负责第一数据库122与第二数据库142之间的数据同步备份。可选地,第一数据库122和第二数据库142均为Redis数据库。
另外,在图1所示的实施环境中,仅以第一数据库122和第一数据同步装置124部署于同一设备(也即第一数据库服务器120)中,第二数据库142和第二数据同步装置144部署于同一设备(也即第二数据库服务器140)中为例。在其它可能的实施方式中,第一数据库122和第一数据同步装置124可以分别部署于两台互相独立的设备中,第二数据库142和第二数据同步装置144也可分别部署于两台互相独立的设备中,本公开对此不作限定。
在相关技术提供的采用主从模式部署的Redis数据库系统中,存在主库与从库中的数据同时丢失的风险。由于Redis数据库存储于内存中,当主库发生故障时,主库内的数据有可能被清空。此时如果从库与主库间正在进行数据同步备份,则从库内的数据也同样会被清空,进而造成两个Redis数据库中的数据完全丢失。
在本公开实施例提供的技术方案中,Redis数据库系统采用双主模式部署。通过将对应于第一数据库的写操作命令记录为日志信息,在第二数据库中以重放操作的方式完成数据同步备份。即便第一数据库发生故障时被清空,由于因故障导致的数据清空不会产生相应的写操作命令,故第二数据库中的数据不会被清空,从而避免两个数据库中的数据完全丢失的风险。
下面,通过几个实施例对本公开提供的技术方案进行介绍和说明。
图2是根据一示例性实施例示出的一种数据同步方法的流程图。该数据同步方法可应用于图1所示实施环境中的第一数据库服务器120中。该数据同步方法可以包括如下几个步骤:
在步骤202中,获取对应于第一数据库的写操作命令。
在步骤204中,将该写操作命令写入第一日志文件中。
在步骤206中,向第二数据库服务器发送包括该写操作命令的日志信息,第二数据库服务器用于根据该日志信息对第二数据库执行上述写操作命令。
综上所述,本实施例提供的数据同步方法,通过第一数据库服务器获取对应于第一数据库的写操作命令,并将该写操作命令写入第一日志文件中,然后向第二数据库服务器发送包括该写操作命令的日志信息,使得第二数据库服务器根据该日志信息对第二数据库执行上述写操作命令,完成数据同步备份;解决了相关技术因存在主库与从库中的数据同时丢失的风险,而导致整个数据库系统的可用性较差的问题;避免了两个数据库中的数据完全丢失的风险,保证了整个数据库系统的高可用性。
图3是根据另一示例性实施例示出的一种数据同步方法的流程图。该数据同步方法可应用于图1所示实施环境中的第二数据库服务器140中。该数据同步方法可以包括如下几个步骤:
在步骤302中,接收第一数据库服务器发送的日志信息,该日志信息包括对应于第一数据库的写操作命令。
在步骤304中,将该日志信息写入第二日志文件中。
在步骤306中,根据该日志信息对第二数据库执行写操作命令。
综上所述,本实施例提供的数据同步方法,通过第二数据库服务器接收第一数据库服务器发送的日志信息,并根据该日志信息对第二数据库执行写操作命令;解决了相关技术因存在主库与从库中的数据同时丢失的风险,而导致整个数据库系统的可用性较差的问题;避免了两个数据库中的数据完全丢失的风险,保证了整个数据库系统的高可用性。
图4是根据再一示例性实施例示出的一种数据同步方法的流程图。本实施例以该数据同步方法应用于图1所示实施环境中进行举例说明。该数据同步方法可以包括如下几个步骤:
在步骤401中,第一数据库服务器获取对应于第一数据库的写操作命令。
第一数据库对外提供数据读写业务。用户可通过触发写操作命令对第一数据库中的数据进行更改。写操作命令包括操作类型和操作参数。其中,操作类型包括但不限于增加、删除和修改中的至少一种。操作参数包括上述操作所对应的位置和数据。例如,某个写操作命令所包括的操作类型为删除,操作参数包括xx位置xx数据,则该写操作命令表示在第一数据库中的xx位置删除xx数据。
在步骤402中,第一数据库服务器将获取的写操作命令写入第一日志文件中。
第一日志文件用于记录用户触发的对应于第一数据库的写操作命令。第一日志文件存储于第一数据库服务器的外存储器中,例如硬盘。因此,即使第一数据库服务器断电,第一日志文件也不会丢失。
另外,为了便于日志信息的管理,可仅设置一个第一日志文件。当然,在其它可能的实施方式中,第一数据库服务器中也可设置多个第一日志文件。例如,为每种不同操作类型分别对应设置一个第一日志文件,一个第一日志文件用于记录一种操作类型的写操作命令。
另外,第一数据库服务器在将写操作命令写入第一日志文件之前,还可执行如下几个步骤:
1、第一数据库服务器检测第一日志文件的剩余存储空间是否小于写操作命令的字节大小;
2、若第一日志文件的剩余存储空间小于写操作命令的字节大小,则第一数据库服务器获取第一日志文件中的第一目标日志信息,并删除该第一目标日志信息。
其中,第一目标日志信息的字节大小与第一日志文件的剩余存储空间之和大于或者等于写操作命令的字节大小,且第一目标日志信息是第一日志文件中最早记录的日志信息。第一数据库服务器可采用LRU(LeastRecentlyUsed,最近最少使用)算法从第一日志文件中选取所要删除的第一目标日志信息。在本实施例中,通过选取最早记录的日志信息进行删除,可以避免将第一日志文件中最近记录的、还未同步至第二数据库服务器中的日志信息删除,为数据库的同步提供可靠保障。
在步骤403中,第一数据库服务器向第二数据库服务器发送包括上述获取的写操作命令的日志信息。
相应地,第二数据库服务器接收第一数据库服务器发送的日志信息。
第一数据库服务器通过有线网络或者无线网络与第二数据库服务器之间建立通信连接,第一数据库服务器通过该通信连接向第二数据库服务器发送日志信息,该日志信息中包括上述对应于第一数据库的写操作命令。
在一种可能的实施方式中,步骤403包括如下几个子步骤:
1、第一数据库服务器获取第一日志文件中已同步的日志信息的偏移位置;
2、第一数据库服务器根据该偏移位置确定第一日志文件中未同步的日志信息,该未同步的日志信息包括上述对应于第一数据库的写操作命令;
3、第一数据库服务器向第二数据库服务器发送未同步的日志信息。
其中,偏移位置是相对于日志文件中所记录的日志信息的初始位置所确定的。第一数据库服务器可获取第二数据库服务器中的第二日志文件中所记录的日志信息的偏移位置,该第二日志文件中所记录的日志信息的偏移位置即为第一日志文件中已同步的日志信息的偏移位置。之后,第一数据库服务器获取第一日志文件中所记录的日志信息的偏移位置,根据该第一日志文件中所记录的日志信息的偏移位置和上述第一日志文件中已同步的日志信息的偏移位置,即可确定出第一日志文件中未同步的日志信息。在一种可能的实施方式中,采用offset函数实现上述功能。
在步骤404中,第二数据库服务器将接收到的日志信息写入第二日志文件中。
第二日志文件可视为第一日志文件在第二数据库服务器中的备份。第二数据库服务器接收到第一数据库服务器发送的日志信息后,将该日志信息写入第二日志文件中。第二日志文件存储于第二数据库服务器的外存储器中,例如硬盘。因此,即使第二数据库服务器断电,第二日志文件也不会丢失。
另外,为了便于日志信息的管理,可仅设置一个第二日志文件。当然,在其它可能的实施方式中,第二数据库服务器中也可设置多个第二日志文件。例如,为每种不同操作类型分别对应设置一个第二日志文件,一个第二日志文件用于记录一种操作类型的写操作命令。
另外,第二数据库服务器在将接收到的日志信息写入第二日志文件之前,还可执行如下几个步骤:
1、第二数据库服务器检测第二日志文件的剩余存储空间是否小于接收到的日志信息的字节大小;
2、若第二日志文件的剩余存储空间小于接收到的日志信息的字节大小,则第二数据库服务器获取第二日志文件中的第二目标日志信息,并删除该第二目标日志信息。
其中,第二目标日志信息的字节大小与第二日志文件的剩余存储空间之和大于或者等于接收到的日志信息的字节大小,且第二目标日志信息是第二日志文件中最早记录的日志信息。与上文介绍的方法类似,第二数据库服务器可采用LRU算法从第二日志文件中选取所要删除的第二目标日志信息。在本实施例中,通过选取最早记录的日志信息进行删除,可以避免将第二日志文件中最近写入的、还未对第二数据库执行的写操作命令删除,为数据库的同步提供可靠保障。
在步骤405中,第二数据库服务器根据接收到的日志信息,对第二数据库执行上述写操作命令。
第二数据库服务器以重放操作的方式,对第二数据库执行写操作命令,从而实现第一数据库与第二数据库之间的数据同步备份。
可选地,第二数据库服务器在接收到第一数据库服务器发送的日志信息后,向第一数据库服务器发送成功接收响应,该成功接收响应用于指示已成功接收上述日志信息。
相应地,第一数据库服务器在向第二数据库服务器发出日志信息后,便可根据是否接收到成功接收响应的反馈,确定第二数据库服务器是否已成功接收上述日志信息。在上述步骤403之后,第一数据库服务器检测在发出日志信息后的预定时段内是否接收到第二数据库服务器反馈的成功接收响应;若未接收到成功接收响应,则第一数据库服务器向第二数据库服务器重发上述日志信息。通过上述接收反馈机制,能够保证第二数据库服务器成功接收到第一数据库服务器发送的日志信息,进而为数据库的同步提供可靠保障。
在本实施例中,实现了采用双主模式部署数据库系统。当第一数据库发生故障时,如第一数据库的相关进程奔溃,网络故障,甚至第一数据库所在的主机宕机等故障,第二数据库可以无缝接管第一数据库的业务。通过将对应于第一数据库的写操作命令记录为日志信息,在第二数据库中以重放操作的方式完成数据同步备份。即便第一数据库发生故障时被清空,由于因故障导致的数据清空不会产生相应的写操作命令,故第二数据库中的数据不会被清空,从而避免两个数据库中的数据完全丢失的风险。
综上所述,本实施例提供的数据同步方法,通过第一数据库服务器获取对应于第一数据库的写操作命令,并将该写操作命令写入第一日志文件中,然后向第二数据库服务器发送包括该写操作命令的日志信息,使得第二数据库服务器根据该日志信息对第二数据库执行上述写操作命令,完成数据同步备份;解决了相关技术因存在主库与从库中的数据同时丢失的风险,而导致整个数据库系统的可用性较差的问题;避免了两个数据库中的数据完全丢失的风险,保证了整个数据库系统的高可用性。
另外,还通过第一数据库服务器检测在发出日志信息后的预定时段内是否接收到第二数据库服务器反馈的成功接收响应,并在未接收到成功接收响应的情况下,向第二数据库服务器重发日志信息;保证了第二数据库服务器能够成功接收到第一数据库服务器发送的日志信息,进而为数据库的同步提供可靠保障。
结合参考图1,在一种可能的实施方式中,数据同步过程如下:
1、第一数据同步装置向第一数据库发送连接建立请求,该连接建立请求用于请求与第一数据库之间建立数据传输连接,该数据传输连接可以是TCP(TransmissionControlProtocol,传输控制协议)连接;
2、第一数据库根据连接建立请求,与第一数据同步装置之间建立数据传输连接;
3、第一数据库接收用户触发的写操作命令;
4、第一数据库向第一数据同步装置发送该写操作命令;
5、第一数据同步装置将接收到的写操作命令写入第一日志文件中;
6、第一数据同步装置向第二数据同步装置发送日志信息,该日志信息中包含上述写操作命令;
7、第二数据同步装置将接收到的日志信息写入第二日志文件中;
8、第二数据同步装置根据接收到的日志信息,对第二数据库执行上述写操作命令。
下述为本公开装置实施例,可以用于执行本公开方法实施例。对于本公开装置实施例中未披露的细节,请参照本公开方法实施例。
图5是根据一示例性实施例示出的一种数据同步装置的框图。该数据同步装置可应用于图1所示实施环境中的第一数据库服务器120中。该数据同步装置可以包括:命令获取模块510、命令写入模块520和日志发送模块530。
命令获取模块510,被配置为获取对应于第一数据库的写操作命令。
命令写入模块520,被配置为将所述命令获取模块510获取的所述写操作命令写入第一日志文件中。
日志发送模块530,被配置为向第二数据库服务器发送包括所述命令写入模块520写入至所述第一日志文件中的所述写操作命令的日志信息,所述第二数据库服务器用于根据所述日志信息对第二数据库执行所述写操作命令。
综上所述,本实施例提供的数据同步装置,通过第一数据库服务器获取对应于第一数据库的写操作命令,并将该写操作命令写入第一日志文件中,然后向第二数据库服务器发送包括该写操作命令的日志信息,使得第二数据库服务器根据该日志信息对第二数据库执行上述写操作命令,完成数据同步备份;解决了相关技术因存在主库与从库中的数据同时丢失的风险,而导致整个数据库系统的可用性较差的问题;避免了两个数据库中的数据完全丢失的风险,保证了整个数据库系统的高可用性。
图6是根据一示例性实施例示出的一种数据同步装置的框图。该数据同步装置可应用于图1所示实施环境中的第一数据库服务器120中。该数据同步装置可以包括:日志接收模块610、日志写入模块620和命令执行模块630。
日志接收模块610,被配置为接收第一数据库服务器发送的日志信息,所述日志信息包括对应于第一数据库的写操作命令。
日志写入模块620,被配置为将所述日志接收模块610接收到的所述日志信息写入第二日志文件中。
命令执行模块630,被配置为根据所述日志写入模块620写入至所述第二日志文件中的所述日志信息,对第二数据库执行所述写操作命令。
综上所述,本实施例提供的数据同步装置,通过第二数据库服务器接收第一数据库服务器发送的日志信息,并根据该日志信息对第二数据库执行写操作命令;解决了相关技术因存在主库与从库中的数据同时丢失的风险,而导致整个数据库系统的可用性较差的问题;避免了两个数据库中的数据完全丢失的风险,保证了整个数据库系统的高可用性。
图7是根据一示例性实施例示出的一种数据同步系统的框图。该数据同步系统包括:第一数据库501、第二数据库601、与第一数据库501对应部署的第一数据同步装置502以及与第二数据库601对应部署的第二数据同步装置602。其中,第一数据库501和第一数据同步装置502可部署于第一数据库服务器500中,第二数据库601和第二数据同步装置602可部署于第二数据库服务器600中。
第一数据同步装置502可以包括:命令获取模块510、命令写入模块520和日志发送模块530。
命令获取模块510,被配置为获取对应于第一数据库501的写操作命令。
命令写入模块520,被配置为将所述命令获取模块510获取的所述写操作命令写入第一日志文件中。
日志发送模块530,被配置为向第二数据库服务器600发送包括所述命令写入模块520写入至所述第一日志文件中的所述写操作命令的日志信息,所述第二数据库服务器600用于根据所述日志信息对第二数据库601执行所述写操作命令。
可选地,所述日志发送模块530,包括:获取子模块530a、确定子模块530b和发送子模块530c。
获取子模块530a,被配置为获取所述第一日志文件中已同步的日志信息的偏移位置。
确定子模块530b,被配置为根据所述读取子模块530a读取到的所述偏移位置确定所述第一日志文件中未同步的日志信息,所述未同步的日志信息包括所述写操作命令。
发送子模块530c,被配置为向所述第二数据库服务器600发送所述确定子模块530b确定出的所述未同步的日志信息。
可选地,所述第一数据同步装置502还包括:第一检测模块512、第一获取模块514和第一删除模块516。
第一检测模块512,被配置为检测所述第一日志文件的剩余存储空间是否小于所述写操作命令的字节大小。
第一获取模块514,被配置为在所述第一检测模块512检测出所述第一日志文件的剩余存储空间小于所述写操作命令的字节大小的情况下,获取所述第一日志文件中的第一目标日志信息;其中,所述第一目标日志信息的字节大小与所述第一日志文件的剩余存储空间之和大于或者等于所述写操作命令的字节大小,且所述第一目标日志信息是所述第一日志文件中最早记录的日志信息。
第一删除模块516,被配置为删除所述第一获取模块514获取到的所述第一目标日志信息。
可选地,所述第一数据同步装置502还包括:响应检测模块540和日志重发模块550。
响应检测模块540,被配置为检测在所述日志发送模块530发出所述日志信息后的预定时段内是否接收到所述第二数据库服务器600反馈的成功接收响应,所述成功接收响应用于指示所述第二数据库服务器600已成功接收所述日志信息。
日志重发模块550,被配置为在所述响应检测模块540检测出未接收到所述成功接收响应的情况下,向所述第二数据库服务器600重发所述日志信息。
第二数据同步装置602可以包括:日志接收模块610、日志写入模块620和命令执行模块630。
日志接收模块610,被配置为接收第一数据库服务器500发送的日志信息,所述日志信息包括对应于第一数据库501的写操作命令。
日志写入模块620,被配置为将所述日志接收模块610接收到的所述日志信息写入第二日志文件中。
命令执行模块630,被配置为根据所述日志写入模块620写入至所述第二日志文件中的所述日志信息,对第二数据库601执行所述写操作命令。
可选地,所述第二数据同步装置602还包括:第二检测模块612、第二获取模块614和第二删除模块616。
第二检测模块612,被配置为检测所述第二日志文件的剩余存储空间是否小于所述日志信息的字节大小。
第二获取模块614,被配置为在所述第二检测模块612检测出所述第二日志文件的剩余存储空间小于所述日志信息的字节大小的情况下,获取所述第二日志文件中的第二目标日志信息;其中,所述第二目标日志信息的字节大小与所述第二日志文件的剩余存储空间之和大于或者等于所述日志信息的字节大小,且所述第二目标日志信息是所述第二日志文件中最早记录的日志信息。
第二删除模块616,被配置为删除所述第二获取模块614获取到的所述第二目标日志信息。
可选地,所述第二数据同步装置602还包括:响应发送模块640。
响应发送模块640,被配置为向所述第一数据库服务器500发送成功接收响应,所述成功接收响应用于指示已成功接收所述日志信息。
综上所述,本实施例提供的数据同步系统,通过第一数据库服务器获取对应于第一数据库的写操作命令,并将该写操作命令写入第一日志文件中,然后向第二数据库服务器发送包括该写操作命令的日志信息,使得第二数据库服务器根据该日志信息对第二数据库执行上述写操作命令,完成数据同步备份;解决了相关技术因存在主库与从库中的数据同时丢失的风险,而导致整个数据库系统的可用性较差的问题;避免了两个数据库中的数据完全丢失的风险,保证了整个数据库系统的高可用性。
另外,还通过第一数据库服务器检测在发出日志信息后的预定时段内是否接收到第二数据库服务器反馈的成功接收响应,并在未接收到成功接收响应的情况下,向第二数据库服务器重发日志信息;保证了第二数据库服务器能够成功接收到第一数据库服务器发送的日志信息,进而为数据库的同步提供可靠保障。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
本公开一示例性实施例还提供了一种数据同步装置,该数据同步装置包括:处理器,以及用于存储所述处理器的可执行指令的存储器。其中,所述处理器被配置为:
获取对应于第一数据库的写操作命令;
将所述写操作命令写入第一日志文件中;
向第二数据库服务器发送包括所述写操作命令的日志信息,所述第二数据库服务器用于根据所述日志信息对第二数据库执行所述写操作命令。
在一种可能的实施方式中,所述处理器被配置为:
获取所述第一日志文件中已同步的日志信息的偏移位置;
根据所述偏移位置确定所述第一日志文件中未同步的日志信息,所述未同步的日志信息包括所述写操作命令;
向所述第二数据库服务器发送所述未同步的日志信息。
在一种可能的实施方式中,所述处理器还被配置为:
检测所述第一日志文件的剩余存储空间是否小于所述写操作命令的字节大小;
若所述第一日志文件的剩余存储空间小于所述写操作命令的字节大小,则获取所述第一日志文件中的第一目标日志信息;其中,所述第一目标日志信息的字节大小与所述第一日志文件的剩余存储空间之和大于或者等于所述写操作命令的字节大小,且所述第一目标日志信息是所述第一日志文件中最早记录的日志信息;
删除所述第一目标日志信息。
在一种可能的实施方式中,所述处理器还被配置为:
检测在发出所述日志信息后的预定时段内是否接收到所述第二数据库服务器反馈的成功接收响应,所述成功接收响应用于指示所述第二数据库服务器已成功接收所述日志信息;
若未接收到所述成功接收响应,则向所述第二数据库服务器重发所述日志信息。
本公开另一示例性实施例还提供了一种数据同步装置,该数据同步装置包括:处理器,以及用于存储所述处理器的可执行指令的存储器。其中,所述处理器被配置为:
接收第一数据库服务器发送的日志信息,所述日志信息包括对应于第一数据库的写操作命令;
将所述日志信息写入第二日志文件中;
根据所述日志信息对第二数据库执行所述写操作命令。
在一种可能的实施方式中,所述处理器还被配置为:
检测所述第二日志文件的剩余存储空间是否小于所述日志信息的字节大小;
若所述第二日志文件的剩余存储空间小于所述日志信息的字节大小,则获取所述第二日志文件中的第二目标日志信息;其中,所述第二目标日志信息的字节大小与所述第二日志文件的剩余存储空间之和大于或者等于所述日志信息的字节大小,且所述第二目标日志信息是所述第二日志文件中最早记录的日志信息;
删除所述第二目标日志信息。
在一种可能的实施方式中,所述处理器还被配置为:
向所述第一数据库服务器发送成功接收响应,所述成功接收响应用于指示已成功接收所述日志信息。
图8是根据一示例性实施例示出的一种装置800的框图。例如,装置800可以被提供为一服务器。参照图8,装置800包括处理组件822,其进一步包括一个或多个处理器,以及由存储器832所代表的存储器资源,用于存储可由处理部件822执行的指令,例如应用程序。存储器832中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件822被配置为执行指令,以执行上述图2或图4所示实施例提供的第一数据库服务器侧的数据同步方法,或者以执行上述图3或图4所示实施例提供的第二数据库服务器侧的数据同步方法。
装置800还可以包括一个电源组件826被配置为执行装置800的电源管理,一个有线或无线网络接口850被配置为将装置800连接到网络,和一个输入输出(I/O)接口858。装置800可以操作基于存储在存储器832的操作系统,例如WindowsServerTM,MacOSXTM,UnixTM,LinuxTM,FreeBSDTM或类似。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。

Claims (17)

1.一种数据同步方法,其特征在于,应用于第一数据库服务器中,所述方法包括:
获取对应于第一数据库的写操作命令;
将所述写操作命令写入第一日志文件中;
向第二数据库服务器发送包括所述写操作命令的日志信息,所述第二数据库服务器用于根据所述日志信息对第二数据库执行所述写操作命令。
2.根据权利要求1所述的方法,其特征在于,所述向第二数据库服务器发送包括所述写操作命令的日志信息,包括:
获取所述第一日志文件中已同步的日志信息的偏移位置;
根据所述偏移位置确定所述第一日志文件中未同步的日志信息,所述未同步的日志信息包括所述写操作命令;
向所述第二数据库服务器发送所述未同步的日志信息。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
检测所述第一日志文件的剩余存储空间是否小于所述写操作命令的字节大小;
若所述第一日志文件的剩余存储空间小于所述写操作命令的字节大小,则获取所述第一日志文件中的第一目标日志信息;其中,所述第一目标日志信息的字节大小与所述第一日志文件的剩余存储空间之和大于或者等于所述写操作命令的字节大小,且所述第一目标日志信息是所述第一日志文件中最早记录的日志信息;
删除所述第一目标日志信息。
4.根据权利要求1至3任一所述的方法,其特征在于,所述方法还包括:
检测在发出所述日志信息后的预定时段内是否接收到所述第二数据库服务器反馈的成功接收响应,所述成功接收响应用于指示所述第二数据库服务器已成功接收所述日志信息;
若未接收到所述成功接收响应,则向所述第二数据库服务器重发所述日志信息。
5.一种数据同步方法,其特征在于,应用于第二数据库服务器中,所述方法包括:
接收第一数据库服务器发送的日志信息,所述日志信息包括对应于第一数据库的写操作命令;
将所述日志信息写入第二日志文件中;
根据所述日志信息对第二数据库执行所述写操作命令。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
检测所述第二日志文件的剩余存储空间是否小于所述日志信息的字节大小;
若所述第二日志文件的剩余存储空间小于所述日志信息的字节大小,则获取所述第二日志文件中的第二目标日志信息;其中,所述第二目标日志信息的字节大小与所述第二日志文件的剩余存储空间之和大于或者等于所述日志信息的字节大小,且所述第二目标日志信息是所述第二日志文件中最早记录的日志信息;
删除所述第二目标日志信息。
7.根据权利要求5或6所述的方法,其特征在于,所述方法还包括:
向所述第一数据库服务器发送成功接收响应,所述成功接收响应用于指示已成功接收所述日志信息。
8.一种数据同步装置,其特征在于,应用于第一数据库服务器中,所述装置包括:
命令获取模块,被配置为获取对应于第一数据库的写操作命令;
命令写入模块,被配置为将所述写操作命令写入第一日志文件中;
日志发送模块,被配置为向第二数据库服务器发送包括所述写操作命令的日志信息,所述第二数据库服务器用于根据所述日志信息对第二数据库执行所述写操作命令。
9.根据权利要求8所述的装置,其特征在于,所述日志发送模块,包括:
获取子模块,被配置为获取所述第一日志文件中已同步的日志信息的偏移位置;
确定子模块,被配置为根据所述偏移位置确定所述第一日志文件中未同步的日志信息,所述未同步的日志信息包括所述写操作命令;
发送子模块,被配置为向所述第二数据库服务器发送所述未同步的日志信息。
10.根据权利要求8所述的装置,其特征在于,所述装置还包括:
第一检测模块,被配置为检测所述第一日志文件的剩余存储空间是否小于所述写操作命令的字节大小;
第一获取模块,被配置为在所述第一日志文件的剩余存储空间小于所述写操作命令的字节大小的情况下,获取所述第一日志文件中的第一目标日志信息;其中,所述第一目标日志信息的字节大小与所述第一日志文件的剩余存储空间之和大于或者等于所述写操作命令的字节大小,且所述第一目标日志信息是所述第一日志文件中最早记录的日志信息;
第一删除模块,被配置为删除所述第一目标日志信息。
11.根据权利要求8至10任一所述的装置,其特征在于,所述装置还包括:
响应检测模块,被配置为检测在发出所述日志信息后的预定时段内是否接收到所述第二数据库服务器反馈的成功接收响应,所述成功接收响应用于指示所述第二数据库服务器已成功接收所述日志信息;
日志重发模块,被配置为在未接收到所述成功接收响应的情况下,向所述第二数据库服务器重发所述日志信息。
12.一种数据同步装置,其特征在于,应用于第二数据库服务器中,所述装置包括:
日志接收模块,被配置为接收第一数据库服务器发送的日志信息,所述日志信息包括对应于第一数据库的写操作命令;
日志写入模块,被配置为将所述日志信息写入第二日志文件中;
命令执行模块,被配置为根据所述日志信息对第二数据库执行所述写操作命令。
13.根据权利要求12所述的装置,其特征在于,所述装置还包括:
第二检测模块,被配置为检测所述第二日志文件的剩余存储空间是否小于所述日志信息的字节大小;
第二获取模块,被配置为在所述第二日志文件的剩余存储空间小于所述日志信息的字节大小的情况下,获取所述第二日志文件中的第二目标日志信息;其中,所述第二目标日志信息的字节大小与所述第二日志文件的剩余存储空间之和大于或者等于所述日志信息的字节大小,且所述第二目标日志信息是所述第二日志文件中最早记录的日志信息;
第二删除模块,被配置为删除所述第二目标日志信息。
14.根据权利要求12或13所述的装置,其特征在于,所述装置还包括:
响应发送模块,被配置为向所述第一数据库服务器发送成功接收响应,所述成功接收响应用于指示已成功接收所述日志信息。
15.一种数据同步系统,其特征在于,所述系统包括:第一数据库、第二数据库、与所述第一数据库对应部署的第一数据同步装置以及与所述第二数据库对应部署的第二数据同步装置;
所述第一数据同步装置是如权利要求8至11任一所述的数据同步装置;
所述第二数据同步装置是如权利要求12至14任一所述的数据同步装置。
16.一种数据同步装置,其特征在于,所述装置包括:
处理器;
用于存储所述处理器的可执行指令的存储器;
其中,所述处理器被配置为:
获取对应于第一数据库的写操作命令;
将所述写操作命令写入第一日志文件中;
向第二数据库服务器发送包括所述写操作命令的日志信息,所述第二数据库服务器用于根据所述日志信息对第二数据库执行所述写操作命令。
17.一种数据同步装置,其特征在于,所述装置包括:
处理器;
用于存储所述处理器的可执行指令的存储器;
其中,所述处理器被配置为:
接收第一数据库服务器发送的日志信息,所述日志信息包括对应于第一数据库的写操作命令;
将所述日志信息写入第二日志文件中;
根据所述日志信息对第二数据库执行所述写操作命令。
CN201510518362.4A 2015-08-21 2015-08-21 数据同步方法、装置和系统 Pending CN105159795A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510518362.4A CN105159795A (zh) 2015-08-21 2015-08-21 数据同步方法、装置和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510518362.4A CN105159795A (zh) 2015-08-21 2015-08-21 数据同步方法、装置和系统

Publications (1)

Publication Number Publication Date
CN105159795A true CN105159795A (zh) 2015-12-16

Family

ID=54800657

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510518362.4A Pending CN105159795A (zh) 2015-08-21 2015-08-21 数据同步方法、装置和系统

Country Status (1)

Country Link
CN (1) CN105159795A (zh)

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106254094A (zh) * 2016-07-19 2016-12-21 中国银联股份有限公司 一种数据同步方法及系统
CN106484568A (zh) * 2016-09-30 2017-03-08 郑州云海信息技术有限公司 一种数据灾难备份方法及其系统
CN108647117A (zh) * 2018-04-26 2018-10-12 郑州云海信息技术有限公司 一种数据备份的方法、主系统、设备及计算机可读存储介质
WO2019042174A1 (zh) * 2017-08-29 2019-03-07 阿里巴巴集团控股有限公司 在主数据库和备数据库之间的同步方法、数据库系统和设备
CN110019062A (zh) * 2017-08-14 2019-07-16 北京京东尚科信息技术有限公司 数据同步方法和系统
CN110209642A (zh) * 2018-02-05 2019-09-06 北京智明星通科技股份有限公司 信息处理的方法、装置、服务器及计算机可读介质
CN110377664A (zh) * 2019-07-22 2019-10-25 腾讯科技(深圳)有限公司 数据同步方法、装置、服务器及存储介质
CN110647511A (zh) * 2019-09-27 2020-01-03 掌阅科技股份有限公司 数据同步方法、计算设备及计算机存储介质
CN110958287A (zh) * 2018-09-27 2020-04-03 阿里巴巴集团控股有限公司 操作对象数据同步方法、装置及系统
CN111125060A (zh) * 2019-12-17 2020-05-08 中国联合网络通信集团有限公司 一种数据库管理方法、系统、设备及存储介质
WO2021027972A1 (zh) * 2019-08-09 2021-02-18 中科寒武纪科技股份有限公司 数据同步方法及装置以及相关产品
CN112925848A (zh) * 2021-02-23 2021-06-08 马上消费金融股份有限公司 一种数据同步方法、装置、设备及可读存储介质
CN113177093A (zh) * 2021-05-24 2021-07-27 商汤国际私人有限公司 数据同步方法及装置、电子设备和存储介质
CN114942851A (zh) * 2022-07-25 2022-08-26 北京优合融宜科技有限公司 一种内存数据的读写方法以及读写装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102385637A (zh) * 2011-12-22 2012-03-21 山东中创软件商用中间件股份有限公司 一种数据库信息的备份方法及系统
CN103580906A (zh) * 2012-08-09 2014-02-12 腾讯科技(深圳)有限公司 一种数据备份的方法、系统及服务器
CN103780638A (zh) * 2012-10-18 2014-05-07 腾讯科技(深圳)有限公司 数据同步方法及系统
CN104239476A (zh) * 2014-09-04 2014-12-24 上海天脉聚源文化传媒有限公司 一种数据库同步的方法、装置及系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102385637A (zh) * 2011-12-22 2012-03-21 山东中创软件商用中间件股份有限公司 一种数据库信息的备份方法及系统
CN103580906A (zh) * 2012-08-09 2014-02-12 腾讯科技(深圳)有限公司 一种数据备份的方法、系统及服务器
CN103780638A (zh) * 2012-10-18 2014-05-07 腾讯科技(深圳)有限公司 数据同步方法及系统
CN104239476A (zh) * 2014-09-04 2014-12-24 上海天脉聚源文化传媒有限公司 一种数据库同步的方法、装置及系统

Cited By (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106254094B (zh) * 2016-07-19 2019-08-13 中国银联股份有限公司 一种数据同步方法及系统
CN106254094A (zh) * 2016-07-19 2016-12-21 中国银联股份有限公司 一种数据同步方法及系统
CN106484568A (zh) * 2016-09-30 2017-03-08 郑州云海信息技术有限公司 一种数据灾难备份方法及其系统
CN110019062A (zh) * 2017-08-14 2019-07-16 北京京东尚科信息技术有限公司 数据同步方法和系统
WO2019042174A1 (zh) * 2017-08-29 2019-03-07 阿里巴巴集团控股有限公司 在主数据库和备数据库之间的同步方法、数据库系统和设备
US11429594B2 (en) 2017-08-29 2022-08-30 Alibaba Group Holding Limited Synchronization between primary database and secondary database
CN110209642A (zh) * 2018-02-05 2019-09-06 北京智明星通科技股份有限公司 信息处理的方法、装置、服务器及计算机可读介质
CN108647117A (zh) * 2018-04-26 2018-10-12 郑州云海信息技术有限公司 一种数据备份的方法、主系统、设备及计算机可读存储介质
CN110958287A (zh) * 2018-09-27 2020-04-03 阿里巴巴集团控股有限公司 操作对象数据同步方法、装置及系统
CN110377664A (zh) * 2019-07-22 2019-10-25 腾讯科技(深圳)有限公司 数据同步方法、装置、服务器及存储介质
WO2021027972A1 (zh) * 2019-08-09 2021-02-18 中科寒武纪科技股份有限公司 数据同步方法及装置以及相关产品
CN110647511A (zh) * 2019-09-27 2020-01-03 掌阅科技股份有限公司 数据同步方法、计算设备及计算机存储介质
CN111125060A (zh) * 2019-12-17 2020-05-08 中国联合网络通信集团有限公司 一种数据库管理方法、系统、设备及存储介质
CN111125060B (zh) * 2019-12-17 2023-10-31 中国联合网络通信集团有限公司 一种数据库管理方法、系统、设备及存储介质
CN112925848A (zh) * 2021-02-23 2021-06-08 马上消费金融股份有限公司 一种数据同步方法、装置、设备及可读存储介质
CN112925848B (zh) * 2021-02-23 2024-02-06 马上消费金融股份有限公司 一种数据同步方法、装置、设备及可读存储介质
CN113177093A (zh) * 2021-05-24 2021-07-27 商汤国际私人有限公司 数据同步方法及装置、电子设备和存储介质
CN114942851A (zh) * 2022-07-25 2022-08-26 北京优合融宜科技有限公司 一种内存数据的读写方法以及读写装置

Similar Documents

Publication Publication Date Title
CN105159795A (zh) 数据同步方法、装置和系统
US10895996B2 (en) Data synchronization method, system, and apparatus using a work log for synchronizing data greater than a threshold value
JP6827501B2 (ja) ホットバックアップシステム、ホットバックアップ方法、及びコンピュータ機器
US9934242B2 (en) Replication of data between mirrored data sites
JP4668763B2 (ja) ストレージ装置のリストア方法及びストレージ装置
US8839031B2 (en) Data consistency between virtual machines
US20070276983A1 (en) System method and circuit for differential mirroring of data
US11892922B2 (en) State management methods, methods for switching between master application server and backup application server, and electronic devices
WO2014059804A1 (zh) 数据同步方法及系统
US8930751B2 (en) Initializing replication in a virtual machine
US20060026250A1 (en) Communication system
CN107729515B (zh) 一种数据同步的方法、装置及存储介质
CN112380062A (zh) 一种基于系统备份点多次快速恢复系统的方法及系统
CN110351313B (zh) 数据缓存方法、装置、设备及存储介质
US8612799B2 (en) Method and apparatus of backing up subversion repository
KR101605455B1 (ko) 데이터 손실 없는 데이터베이스 리두 로그 이중화 방법 및 그를 위한 시스템
CN112929438B (zh) 一种双站点分布式数据库的业务处理方法及装置
CN103581262A (zh) 一种主备数据同步方法、装置和系统
CN108400881B (zh) 基于状态机的消息引擎动态调整方法、装置及电子设备
CN105760456A (zh) 一种保持数据一致性的方法和装置
JP6237925B2 (ja) クラスタシステム及びクラスタ制御方法
US11386043B2 (en) Method, device, and computer program product for managing snapshot in application environment
US7587628B2 (en) System, method and computer program product for copying data
CN113515574B (zh) 一种数据同步方法及装置
CN103838639A (zh) 一种恢复虚拟磁盘元数据的方法、装置及系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into 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: 20151216