CN115794950A - 一种快照库处理方法、装置、电子设备和存储介质 - Google Patents
一种快照库处理方法、装置、电子设备和存储介质 Download PDFInfo
- Publication number
- CN115794950A CN115794950A CN202211532493.4A CN202211532493A CN115794950A CN 115794950 A CN115794950 A CN 115794950A CN 202211532493 A CN202211532493 A CN 202211532493A CN 115794950 A CN115794950 A CN 115794950A
- Authority
- CN
- China
- Prior art keywords
- snapshot
- upgrading
- global
- library
- distributed database
- 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
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种快照库处理方法、装置、电子设备和存储介质。其中,方法包括:在分布式数据库系统升级之前,响应于用户的快照创建请求,创建一个全局快照;在结束分布式数据库系统升级之后,获取所述分布式数据库系统的升级结果;若所述升级结果为升级失败,则利用所述全局快照将所述分布式数据库系统恢复到升级之前的状态;若所述升级结果为升级成功,对所述全局快照进行失效处理。本发明方案中,只建立一个全局快照,减少了不必要的备份开销,而且在升级失败时,可以根据全局快照进行恢复,提高了分布式数据库系统升级过程中的容灾能力。
Description
技术领域
本发明涉及数据库技术领域,尤其涉及一种快照库处理方法、装置、电子设备和存储介质。
背景技术
目前业内主流的数据库是集中式数据库(MySQL、Oracle等),然而随着互联网技术的飞速发展,业务数据呈爆炸式增长,尤其是金融行业、科技行业等看重数据安全的行业。为了保证业务数据安全和业务性能的提升,企业需要对数据库系统进行替换升级,新型的分布式数据库逐渐广泛应用。
随着业界分布式数据库系统越来越多的应用及分布式系统的不断演进,系统的应用升级不可避免。
发明内容
本发明提供了一种快照库处理方法、装置、电子设备和存储介质。
根据本发明的一方面,提供了一种快照库处理方法,包括:
在分布式数据库系统升级之前,响应于用户的快照创建请求,创建一个全局快照;
在结束分布式数据库系统升级之后,获取所述分布式数据库系统的升级结果;
若所述升级结果为升级失败,则利用所述全局快照将所述分布式数据库系统恢复到升级之前的状态;
若所述升级结果为升级成功,对所述全局快照进行失效处理。
根据本发明的另一方面,提供了一种快照库处理装置,包括:
快照处理模块,用于在分布式数据库系统升级之前,响应于用户的快照创建请求,创建一个全局快照;
升级结果获取模块,用于在结束分布式数据库系统升级之后,获取所述分布式数据库系统的升级结果;
恢复模块,用于若所述升级结果为升级失败,则利用所述全局快照将所述分布式数据库系统恢复到升级之前的状态;
失效模块,用于若所述升级结果为升级成功,对所述全局快照进行失效处理。
根据本发明的另一方面,提供了一种电子设备,所述电子设备包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行本发明实施例所述的快照库处理方法。
根据本发明的另一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时实现本发明实施例所述的快照库处理方法。
本发明实施例的技术方案,只建立一个全局快照,减少了不必要的备份开销,而且在升级失败时,可以根据全局快照进行恢复,提高了分布式数据库系统升级过程中的容灾能力。
应当理解,本部分所描述的内容并非旨在标识本发明的实施例的关键或重要特征,也不用于限制本发明的范围。本发明的其它特征将通过以下的说明书而变得容易理解。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例一提供的一种快照库处理方法的流程示意图;
图2a是本发明实施例二提供的一种快照库处理方法的流程示意图;
图2b是本发明实施例二提供快照库交互的示意图;
图3a是本发明实施例三提供的一种快照库处理方法的流程示意图;
图3b是本发明实施例三提供的使用全局快照恢复系统的示意图;
图4是本发明实施例四提供的一种快照库处理装置的结构示意图;
图5是实现本发明实施例的快照库处理方法的电子设备的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
实施例一
图1为本发明实施例一提供了一种快照库处理方法的流程图,本实施例可适用于分布式数据库可能发生灾难性故障的场景,典型的,应用于分布式数据库系统升级的场景,该方法可以由快照库处理装置来执行,该快照库处理装置可以采用硬件和/或软件的形式实现,该快照库处理装置可配置于电子设备中。
如图1所示,该快照库处理方法包括:
S101、在分布式数据库系统升级之前,响应于用户的快照创建请求,创建一个全局快照。
本实施例方案可用于针对分布式数据库系统升级的场景,其中,分布式数据库中包括至少一个数据库集群,且每个数据库集群中包括一个主库和多个备库,而主库和备库可以是基于服务器设备构建的。在每次对分布式数据库系统进行升级之前,用户可以在预先构建的前端快照创建界面中进行相应操作,前端产生一个快照创建请求。进而,后端通过响应于快照创建请求,建立一个全局快照,其中,全局快照主要用于记录与备份分布式数据库当前状态下的元数据(例如数据字典、用户账号、表索引等文件)、全局事务管理数据(例如全局事务编号)以及每个数据库集群中隔离出来的备库信息。
S102、在结束分布式数据库系统升级之后,获取分布式数据库系统的升级结果。
本实施例中,在结束分布式数据库系统升级之后,获取分布式数据库系统的升级结果,其中,升级结果包括升级成功和升级失败两种情况。升级失败表示分布式数据库发生了灾难性故障,此时需要按照S103步骤进行恢复;而升级成功,则不再需要全局快照,此时可以按照S104步骤进行处理,以达到节省资源的目的。
S103、若升级结果为升级失败,则利用全局快照将分布式数据库系统恢复到升级之前的状态。
本实施例中,若分布式数据库系统升级失败,此时需要利用全局快照将分布式数据库系统恢复到升级之前的状态。示例性的,针对任一数据库集群,将全局快照记录的该数据库集群中被隔离出来的备库(保存有升级前的数据)作为新的主库,利用新的主库中的数据,对该数据库中的其他备库和原来的主库进行数据恢复,以此实现将该数据库集群恢复到升级前。如此,在遇到升级失败时,利用预先建立的全局快照,可以快速恢复到升级前的状态,提高了分布式数据库系统升级过程中的容灾能力。
S104、若升级结果为升级成功,对全局快照进行失效处理。
本实施例中,若升级结果为升级成功,此时已经不再需要全局快照,此时为了节省资源,可以将全局快照进行失效处理,例如,将该全局快照标记为不可用,同时删除该全局快照相关的备份数据。
本发明实施例中,只建立一个临时的全局快照,减少了不必要的备份开销,而且在升级失败时,可以根据全局快照进行恢复,提高了分布式数据库系统升级过程中的容灾能力。
实施例二
图2a为本发明实施例二提供的一种快照库处理方法的流程图。本实施例中增加了创建全局快照的过程。参见图2a,该方法流程包括如下步骤:
S201、在分布式数据库系统升级之前,响应于用户的快照创建请求,对分布式数据库系统当前的元数据和全局事务管理数据进行备份。
在一种可选的实施方式中,在分布式数据库系统升级之前,响应于用户的快照创建请求,获取存放生成快照的存储配置信息;其中,存储配置信息中至少包括备份数据的存储路径和存储方式,存储方式示例性的可以为本地存储,也可以为云端存储,在此不做具体限定。如此可根据存储配置信息,对分布式数据库系统当前的元数据和全局事务管理数据进行备份,也即按照预定的存储路径和存储方式对元数据和全局事务管理数据进行备份;其中,元数据可以示例性的为数据字典、用户账号、表索引等文件;全局事务管理数据示例性的为全局事务编号。
本实施例中,在对分布式数据库系统当前的元数据和全局事务管理数据进行备份之前,还可以进行数据库水位校验,例如先获取分布式数据库的水位信息,若根据水位信息确定分布式数据库的当前水位高于预设的高水位,则确定数据库正常可用,可以进行备份的操作;否则,结束创建全局快照。除此之外,还可以通知写数据服务暂停向主库中写数据,以避免因为持续向主库写数据而影响数据备份。
S202、针对分布式数据库系统的任一数据库集群,从该数据库集群中确定一个快照备库,并断开快照备库和该数据库集群中主库之间的复制关系。
本实施例中,在创建全局快照时,除了对元数据和全局事务管理数据进行备份外,还需要针从每个数据库集群中各自隔离出一个快照备库,使得每个快照备库保存其所在数据库集群升级前的数据。在一种可选的实施方式中,针对分布式数据库系统的任一数据库集群,从该数据库集群中确定一个快照备库,包括:获取该数据库集群中各备库的数据同步信息,其中,数据同步信息可以是描述每个备库同步数据的速度信息;可选的,可以从主库中获取当前逻辑日志,进而从当前逻辑日志中确定该数据库集群中各备库的数据同步信息;进一步的,根据数据同步信息,将该数据库集群中数据同步最快的备库作为快照备库。
进一步的,在确定快照备库之后,断开快照备库和该数据库集群中主库之间的复制关系,也即是断开主库和快照备库之间的I/O线程,使得主库无法在向快照备库同步数据,由此使得快照备库保存了升级前的数据。
进一步的,数据库应用升级会停业务,为保证快照备库的数据追上了主库,对备库设置一个等待同步回放完成时间。在断开快照备库和该数据库集群中主库之间的复制关系之前,还包括:根据快照备库关联的等待备库同步回放时间,在主库与快照备库之间进行数据同步,使得快照备库中数据与主库中数据一致。
S203、将各数据库集群中的快照备库、备份的元数据和备份的全局事务管理数据作为全局快照。
本实施例中,为了更好的描述建立全局快照的建立过程,给出了快照库交互的示意图,具体参见图2b,其中,快照处理过程涉及到的功能模块快包括:前端快照创建界面Insight、命令下发模块快OMM、系统信息记录模块RDB、全局事务管理模块GTM(可用于对全局事务数据进行备份或恢复)、元数据模块MDS(可用于对数据字典、用户账号、表索引等文件备份或恢复)、管理模块CM(可用于执行本发明的快照库处理方法)。除此之外,分布式数据库示例性的包括两个集群,分别为集群1(即group1)和集群2(即group2);其中,集群1中包括一个主库DB1,两个备库(即DB2和DB3);集群2中包括一个主库DB4和两个备库(即DB5和DB6)。
在此基础上,参见图2b,建立全局快照的过程如下:在分布式数据库系统升级之前,用户可以在前端快照创建界面Insight中进行快照操作,产生一个快照创建请求,并发送到命令下发模块OMM;命令下发模块OMM在接收到快照创建请求后,首先访问系统信息记录模块RDB,查看当前是否存在可用的全局快照或存在正在建立的全局快照,若不存在,则将快照创建请求发送到管理模块CM中,管理模块CM可以从系统信息记录模块RDB获取预先配置的快照的存储配置信息(包括备份数据的存储路径和存储方式)。进一步的,管理模块CM发送获取水位信息给元数据模块MDS,以校验水位是否大于预设的高水位,若是,则校验通过;进而,通知写数据服务暂停向主库中写数据。然后进行数据备份,具体的,管理模块CM发送备份元数据消息给元数据模块MDS,使得元数据模块MDS根据存储配置信息进行元数据的备份;同时,管理模块CM发送备份全局事务管理数据消息到全局事务管理模块GTM,使得全局事务管理模块GTM根据存储配置信息进行全局事务管理数据的备份。进一步的,获取当前的逻辑日志,根据逻辑日志选择每个集群中同步最快的备库作为快照备库,并断开主库和快照备库之间的I/O线程;最后,通知写数据服务继续向主库写数据。
S204、在结束分布式数据库系统升级之后,获取分布式数据库系统的升级结果。
S205、若升级结果为升级失败,则利用全局快照将分布式数据库系统恢复到升级之前的状态。
S206、若升级结果为升级成功,对全局快照进行失效处理。
其中,S204-S206的步骤可参见上述实施例,在此不再赘述。
本实施例方案提高了分布式数据库升级过程中的容灾能力,减少了不必要的备份开销,稳定高效的同时保证了分布式系统的全局一致性。在快照备库的选择方面,可灵活选择本地同城中的同步最快的备库,提高了效率。
实施例三
图3a为本发明实施例三提供的一种快照库处理方法的流程图。参见图3a,该方法流程包括如下步骤:
S301、在分布式数据库系统升级之前,响应于用户的快照创建请求,创建一个全局快照。
S302、在结束分布式数据库系统升级之后,获取所述分布式数据库系统的升级结果。
本实施例中,若升级结果为升级失败,则按照S303-S305的步骤,将分布式数据库系统恢复到升级之前的状态。若升级结果为成功,则按照S306的步骤释放全局快照。
S303、若所述升级结果为升级失败,根据全局快照的存储配置信息,恢复分布式数据库系统在升级前的元数据和全局事务管理数据。
在升级失败的情况下,为了恢复分布式数据库系统,首先需要将元数据和全局事务管理数据恢复到升级前,具体的,可先获取全局快照信息的存储配置信息,进而根据存储配置信息获取升级前备份的元数据和全局事务管理数据,并对其进行恢复。本实施例中,为了不影响系统恢复,在恢复分布式数据库系统的元数据和全局事务管理数据之前,还可以暂停写数据服务,以便暂停向主库中写数据。
S304、针对分布式数据库系统中的任一数据库集群,将该数据库集群中的快照备库作为新主库,将原来的主库作为备库。
在恢复分布式数据库系统在升级前的元数据和全局事务管理数据之后,针对分布式数据库系统中的任一数据库集群,启用该集群中的快照备库,将该数据库集群中的快照备库作为新主库,将原来的主库作为备库。在具体实现时,可通过发送主备切换指令实现。
S305、恢复新主库与各备库之间的复制关系,以将分布式数据库系统恢复到升级之前的状态。
在通过S304确定新主库后,恢复新主库与各备库之间的复制关系,也即是恢复新主库与各备库之间的I/O线程,使得新主库可以通过I/O线程向各个备库同步数据,直到各备库中的数据和新主库中的数据一致为止,此时分布式数据库系统恢复到升级之前的状态。
进一步的,在分布式数据库系统恢复到升级之前的状态后,根据全局快照的存储配置信息,将已备份的元数据和全局事务管理数据清除,以降低资源的占用,同时可以启动写数据服务,以便重新向新主库中写数据,也即继续执行相关业务;除此之外,还可以全局快照标记为不可用状态,并记录在系统信息记录模块RDB中。
本实施例中,为了详细描述恢复过程,参见图3b,其示出了使用全局快照恢复系统的示意图。其中,快照处理过程涉及到的功能模块快包括:前端快照创建界面Insight、命令下发模块快OMM、系统信息记录模块RDB、全局事务管理模块GTM(可用于对全局事务数据进行备份或恢复)、元数据模块MDS(可用于对数据字典、用户账号、表索引等文件备份或恢复)、管理模块CM(可用于执行本发明的快照库处理方法)。除此之外,分布式数据库示例性的包括两个集群,分别为集群1(即group1)和集群2(即group2);其中,集群1中包括一个主库DB1,两个备库(即DB2和DB3);集群2中包括一个主库DB4和两个备库(即DB5和DB6)。
在进行系统恢复时,首先,用户可以在前端快照创建界面Insight中进行数据库系统恢复的操作,产生恢复请求,并通过命令下发模块快OMM发送到管理模块CM中,进而,管理模块CM响应于该命令,从系统信息记录模块RDB中获取全局快照的存储配置信息,并通知元数据模块MDS根据存储配置信息获取元数据进行恢复,同时通知全局事务管理模块GTM根据存储配置信息获取全局事务管理数据进行恢复,在恢复完之后,通过调用设置水位接口,将待恢复集群水位设置为1:1。进一步的,管理模块CM还通知快照备库恢复并变更为新主库,同时将原主库变为备库,以集群1为例进行说明,DB3是隔离出的快照备库,DB1是原主库,在将快照备库DB3恢复为可用状态时,将DB3切换为新主库,将原主库DB1切换为备库;进而,建立DB3与DB1之间的复制关系,也即恢复DB3与DB1之间的I/O线程,使得DB3可以将自身的数据同步到DB1中;同理建立DB3和DB2之间的复制关系。如此,在数据同步完成之后,所有备库中的数据和新主库中的数据一致,也即将该集群恢复到升级前状态。
S306、若所述升级结果为升级成功,针对分布式数据库系统中的任一数据库集群,重新建立快照备库和主库之间的复制关系。
若所述升级结果为升级成功,此时已经不需要全局快照,因此可将全局快照失效即可。具体实现时,可以根据全局快照的存储配置信息,将已备份的元数据和全局事务管理数据清除;进一步的,由于快照备库与主库之间已无复制关系,在失效全局快照时,需要重新恢复两者之间的复制关系,例如针对分布式数据库系统中的任一数据库集群,重新建立快照备库和主库之间的复制关系。需要说明的是,如果发现主备复制关系恢复正常,则结束处理。如果发现主备复制关系修复失败,可能主库已经清理掉所需逻辑日志,需要手工在Insight界面发起恢复操作,恢复相关备库节点。最后将全局快照标记为不可用状态。
本实施例中,只建立一个全局快照,减少了不必要的备份开销,而且在升级失败时,可以根据全局快照进行恢复,提高了分布式数据库系统升级过程中的容灾能力;同时及时释放全局快照,避免全局快照占用过多资源。
实施例四
图4为本发明实施例四提供的一种快照库处理装置的结构示意图,本实施例可适用于本实施例可适用于分布式数据库可能发生灾难性故障的场景,典型的,应用于分布式数据库系统升级的场景。如图4所示,该装置包括:
快照处理模块401,用于在分布式数据库系统升级之前,响应于用户的快照创建请求,创建一个全局快照;
升级结果获取模块402,用于在结束分布式数据库系统升级之后,获取所述分布式数据库系统的升级结果;
恢复模块403,用于若所述升级结果为升级失败,则利用所述全局快照将所述分布式数据库系统恢复到升级之前的状态;
失效模块404,用于若所述升级结果为升级成功,对所述全局快照进行失效处理。
在上述实施例的基础上,可选的,所述分布式数据库系统中包括至少一个数据库集群,且每个数据库集群中包括一个主库和多个备库;
相应的,快照处理模块,包括:
备份单元,用于响应于用户的快照创建请求,对所述分布式数据库系统当前的元数据和全局事务管理数据进行备份;
隔离单元,用于针对所述分布式数据库系统的任一数据库集群,从该数据库集群中确定一个快照备库,并断开所述快照备库和该数据库集群中主库之间的复制关系;
创建单元,用于将各数据库集群中的快照备库、备份的元数据和备份的全局事务管理数据作为全局快照。
在上述实施例的基础上,可选的,备份单元还用于:
响应于用户的快照创建请求,获取存放生成快照的存储配置信息;
根据所述存储配置信息,对所述分布式数据库系统当前的元数据和全局事务管理数据进行备份。
在上述实施例的基础上,可选的,隔离单元还用于:
获取该数据库集群中各备库的数据同步信息;
根据所述数据同步信息,将该数据库集群中数据同步最快的备库作为所述快照备库。
在上述实施例的基础上,可选的,还包括:
等待同步模块,用于在断开所述快照备库和该数据库集群中主库之间的复制关系之前,根据所述快照备库关联的等待备库同步回放时间,在所述主库与快照备库之间进行数据同步,使得所述快照备库中数据与所述主库中数据一致。
在上述实施例的基础上,可选的,恢复模块还用于:
根据所述全局快照的存储配置信息,恢复所述分布式数据库系统在升级前的元数据和全局事务管理数据;
针对所述分布式数据库系统中的任一数据库集群,将该数据库集群中的快照备库作为新主库,将原来的主库作为备库;
恢复所述新主库与各备库之间的复制关系,以将所述分布式数据库系统恢复到升级之前的状态。
在上述实施例的基础上,可选的,对所述全局快照进行失效处理,包括:
针对所述分布式数据库系统中的任一数据库集群,重新建立所述快照备库和所述主库之间的复制关系。
在上述实施例的基础上,可选的,还包括:
清除与标记模块,用于在将所述分布式数据库系统恢复到升级之前的状态之后,或者,在重新建立快照备库和所述主库之间的复制关系之后,执行如下步骤:根据所述全局快照的存储配置信息,将已备份的元数据和全局事务管理数据清除,并将所述全局快照标记为不可用状态。
本发明实施例所提供的快照库处理装置可执行本发明任意实施例所提供的快照库处理方法,具备执行方法相应的功能模块和有益效果。
实施例五
图5示出了可以用来实施本发明的实施例的电子设备10的结构示意图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备(如头盔、眼镜、手表等)和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本发明的实现。
如图5所示,电子设备10包括至少一个处理器11,以及与至少一个处理器11通信连接的存储器,如只读存储器(ROM)12、随机访问存储器(RAM)13等,其中,存储器存储有可被至少一个处理器执行的计算机程序,处理器11可以根据存储在只读存储器(ROM)12中的计算机程序或者从存储单元18加载到随机访问存储器(RAM)13中的计算机程序,来执行各种适当的动作和处理。在RAM 13中,还可存储电子设备10操作所需的各种程序和数据。处理器11、ROM 12以及RAM 13通过总线14彼此相连。输入/输出(I/O)接口15也连接至总线14。
电子设备10中的多个部件连接至I/O接口15,包括:输入单元16,例如键盘、鼠标等;输出单元17,例如各种类型的显示器、扬声器等;存储单元18,例如磁盘、光盘等;以及通信单元19,例如网卡、调制解调器、无线通信收发机等。通信单元19允许电子设备10通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
处理器11可以是各种具有处理和计算能力的通用和/或专用处理组件。处理器11的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的处理器、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。处理器11执行上文所描述的各个方法和处理,例如执行快照库处理方法。
在一些实施例中,快照库处理方法可被实现为计算机程序,其被有形地包含于计算机可读存储介质,例如存储单元18。在一些实施例中,计算机程序的部分或者全部可以经由ROM12和/或通信单元19而被载入和/或安装到电子设备10上。当计算机程序加载到RAM13并由处理器11执行时,可以执行上文描述的快照库处理方法的一个或多个步骤。备选地,在其他实施例中,处理器11可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行快照库处理方法。
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、现场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、复杂可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
用于实施本发明的方法的计算机程序可以采用一个或多个编程语言的任何组合来编写。这些计算机程序可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器,使得计算机程序当由处理器执行时使流程图和/或框图中所规定的功能/操作被实施。计算机程序可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本发明的上下文中,计算机可读存储介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的计算机程序。计算机可读存储介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。备选地,计算机可读存储介质可以是机器可读信号介质。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在电子设备上实施此处描述的系统和技术,该电子设备具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给电子设备。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)、区块链网络和互联网。
计算系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与VPS服务中,存在的管理难度大,业务扩展性弱的缺陷。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发明中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本发明的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。
Claims (11)
1.一种快照库处理方法,其特征在于,包括:
在分布式数据库系统升级之前,响应于用户的快照创建请求,创建一个全局快照;
在结束分布式数据库系统升级之后,获取所述分布式数据库系统的升级结果;
若所述升级结果为升级失败,则利用所述全局快照将所述分布式数据库系统恢复到升级之前的状态;
若所述升级结果为升级成功,对所述全局快照进行失效处理。
2.根据权利要求1所述的方法,其特征在于,所述分布式数据库系统中包括至少一个数据库集群,且每个数据库集群中包括一个主库和多个备库;
相应的,所述响应于用户的快照创建请求,创建一个全局快照,包括:
响应于用户的快照创建请求,对所述分布式数据库系统当前的元数据和全局事务管理数据进行备份;
针对所述分布式数据库系统的任一数据库集群,从该数据库集群中确定一个快照备库,并断开所述快照备库和该数据库集群中主库之间的复制关系;
将各数据库集群中的快照备库、备份的元数据和备份的全局事务管理数据作为全局快照。
3.根据权利要求2所述的方法,其特征在于,响应于用户的快照创建请求,对所述分布式数据库系统当前的元数据和全局事务管理数据进行备份,包括:
响应于用户的快照创建请求,获取存放生成快照的存储配置信息;
根据所述存储配置信息,对所述分布式数据库系统当前的元数据和全局事务管理数据进行备份。
4.根据权利要求2所述的方法,其特征在于,针对所述分布式数据库系统的任一数据库集群,从该数据库集群中确定一个快照备库,包括:
获取该数据库集群中各备库的数据同步信息;
根据所述数据同步信息,将该数据库集群中数据同步最快的备库作为所述快照备库。
5.根据权利要求2所述的方法,其特征在于,在断开所述快照备库和该数据库集群中主库之间的复制关系之前,还包括:
根据所述快照备库关联的等待备库同步回放时间,在所述主库与快照备库之间进行数据同步,使得所述快照备库中数据与所述主库中数据一致。
6.根据权利要求2所述的方法,其特征在于,利用所述全局快照将所述分布式数据库系统恢复到升级之前的状态,包括:
根据所述全局快照的存储配置信息,恢复所述分布式数据库系统在升级前的元数据和全局事务管理数据;
针对所述分布式数据库系统中的任一数据库集群,将该数据库集群中的快照备库作为新主库,将原来的主库作为备库;
恢复所述新主库与各备库之间的复制关系,以将所述分布式数据库系统恢复到升级之前的状态。
7.根据权利要求2所述的方法,其特征在于,对所述全局快照进行失效处理,包括:
针对所述分布式数据库系统中的任一数据库集群,重新建立所述快照备库和所述主库之间的复制关系。
8.根据权利要求6或7所述的方法,其特征在于,还包括:
在将所述分布式数据库系统恢复到升级之前的状态之后,或者,在重新建立快照备库和所述主库之间的复制关系之后,执行如下步骤:根据所述全局快照的存储配置信息,将已备份的元数据和全局事务管理数据清除,并将所述全局快照标记为不可用状态。
9.一种快照库处理装置,其特征在于,包括:
快照处理模块,用于在分布式数据库系统升级之前,响应于用户的快照创建请求,创建一个全局快照;
升级结果获取模块,用于在结束分布式数据库系统升级之后,获取所述分布式数据库系统的升级结果;
恢复模块,用于若所述升级结果为升级失败,则利用所述全局快照将所述分布式数据库系统恢复到升级之前的状态;
失效模块,用于若所述升级结果为升级成功,对所述全局快照进行失效处理。
10.一种电子设备,其特征在于,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-8中任一项所述的方法。
11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时实现权利要求1-8中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211532493.4A CN115794950A (zh) | 2022-12-01 | 2022-12-01 | 一种快照库处理方法、装置、电子设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211532493.4A CN115794950A (zh) | 2022-12-01 | 2022-12-01 | 一种快照库处理方法、装置、电子设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115794950A true CN115794950A (zh) | 2023-03-14 |
Family
ID=85444658
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211532493.4A Pending CN115794950A (zh) | 2022-12-01 | 2022-12-01 | 一种快照库处理方法、装置、电子设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115794950A (zh) |
-
2022
- 2022-12-01 CN CN202211532493.4A patent/CN115794950A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102891849B (zh) | 业务数据同步方法、恢复方法及装置和网络设备 | |
CN106776121B (zh) | 一种数据灾备装置、系统及方法 | |
US20150213100A1 (en) | Data synchronization method and system | |
CN111078667B (zh) | 一种数据迁移的方法以及相关装置 | |
US7457830B1 (en) | Method and system of replicating data using a recovery data change log | |
CN109189860A (zh) | 一种基于Kubernetes系统的MySQL主备增量同步方法 | |
CN111666266A (zh) | 一种数据迁移方法及相关设备 | |
CN115617908A (zh) | 一种MySQL数据同步方法、装置、数据库终端、介质及系统 | |
CN113297173B (zh) | 分布式数据库集群管理方法及装置、电子设备 | |
CN110321386A (zh) | 数据同步架构的设置、数据恢复方法及系统 | |
CN105488139B (zh) | 基于用电信息采集系统的跨平台存储数据迁移的方法 | |
US8918364B1 (en) | Online mirror state transitioning in databases | |
CN115934742A (zh) | 一种故障处理方法、装置、设备及存储介质 | |
CN115098300B (zh) | 一种数据库的备份方法、容灾方法、装置及设备 | |
CN110196788B (zh) | 一种数据读取方法、装置、系统及存储介质 | |
CN106445729A (zh) | 一种基于备份虚拟化的方法 | |
US9600188B2 (en) | Collision avoidance using dynamic target volume allocation from a shared resource pool | |
CN115794950A (zh) | 一种快照库处理方法、装置、电子设备和存储介质 | |
CN115510036A (zh) | 数据迁移方法、装置、设备以及存储介质 | |
CN112860376A (zh) | 一种快照链的制作方法、装置、电子设备及存储介质 | |
CN114490570A (zh) | 生产数据同步方法、装置、数据同步系统及服务器 | |
US9672118B2 (en) | Collision avoidance using dynamic target volume allocation | |
CN107590286B (zh) | 在集群文件系统中事务信息的管理方法和装置 | |
CN112181729A (zh) | 一种虚拟机备份控制装置、系统及方法 | |
CN111400098A (zh) | 一种副本管理方法、装置、电子设备及存储介质 |
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 |