CN112685497A - 一种mysql数据库集群的数据操作执行方法、装置及设备 - Google Patents

一种mysql数据库集群的数据操作执行方法、装置及设备 Download PDF

Info

Publication number
CN112685497A
CN112685497A CN202011568388.7A CN202011568388A CN112685497A CN 112685497 A CN112685497 A CN 112685497A CN 202011568388 A CN202011568388 A CN 202011568388A CN 112685497 A CN112685497 A CN 112685497A
Authority
CN
China
Prior art keywords
command
data operation
management node
working
database cluster
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.)
Granted
Application number
CN202011568388.7A
Other languages
English (en)
Other versions
CN112685497B (zh
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 Inspur Data Technology Co Ltd
Original Assignee
Beijing Inspur Data Technology Co Ltd
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 Beijing Inspur Data Technology Co Ltd filed Critical Beijing Inspur Data Technology Co Ltd
Priority to CN202011568388.7A priority Critical patent/CN112685497B/zh
Publication of CN112685497A publication Critical patent/CN112685497A/zh
Application granted granted Critical
Publication of CN112685497B publication Critical patent/CN112685497B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请公开了一种应用于管理节点的mysql数据库集群的数据操作执行方法,该方法在执行数据操作之前先对各个工作节点进行校验,当且仅当各个工作节点均能够正常执行目标数据操作时,管理节点才向工作节点发送提交命令触发真正的目标数据操作,否则发送终止命令触发回滚操作。保证了mysql数据库集群各节点之间数据的一致性,提升了用户查询数据的准确性,避免出现数据错乱问题。此外,本申请还提供了一种应用于管理节点的mysql数据库集群的数据操作执行装置、一种应用于工作节点的mysql数据库集群的数据操作执行方法及装置、以及一种mysql数据库集群的数据操作执行设备,其技术效果与上述方法的技术效果相对应。

Description

一种mysql数据库集群的数据操作执行方法、装置及设备
技术领域
本申请涉及计算机技术领域,特别涉及一种应用于管理节点的mysql数据库集群的数据操作执行方法及装置,一种应用于工作节点的mysql数据库集群的数据操作执行方法及装置,以及一种mysql数据库集群的数据操作执行设备。
背景技术
随着移动互联网时代的到来,智能设备越来越多(智能手机、智能手表、平板等),数据量存储越来越大,用户读写数据的频次和并发度也越来越高,传统的单机数据库已经不能满足海量数据存储和并发处理的需求。越来越多的公司选择使用分布式数据库集群,当使用mysql数据库集群的时候,有时候会误删一些数据,导致数据缺失了完整性,所以需要对数据进行备份,将误删的数据还原出来,从而保证数据的完整性。
由于数据库集群节点很多,当执行备份/恢复操作时,如果某节点由于网络问题或者宕机导致部分节点执行命令成功,部分命令执行失败,此时数据库集群个别节点数据将不再完整,各个节点的数据就会出现不一致的问题,造成用户查询数据出现数据错乱的不良体验。
发明内容
本申请的目的是提供一种应用于管理节点的mysql数据库集群的数据操作执行方法及装置,一种应用于工作节点的mysql数据库集群的数据操作执行方法及装置,以及一种mysql数据库集群的数据操作执行设备,用以解决mysql数据库集群中,在执行数据操作时容易导致各个节点的数据不一致的问题。其具体方案如下:
第一方面,本申请提供了一种mysql数据库集群的数据操作执行方法,应用于管理节点,该方法包括:
在接收到数据操作命令后,向mysql数据库集群的全部工作节点发送准备命令,询问所述工作节点是否能够正常执行目标数据操作;
接收各个所述工作节点的响应消息;
若全部所述工作节点的响应消息均为是,则向全部所述工作节点发送提交命令,以便所述工作节点执行目标数据操作;
若任意所述工作节点的响应消息为否,则向全部所述工作节点发送终止命令,以便所述工作节点执行回滚操作。
优选的,所述数据操作命令包括:备份命令和/或恢复命令。
优选的,在所述向全部所述工作节点发送提交命令,以便所述工作节点执行目标数据操作之后,还包括:
等待所述工作节点的完成响应,在接收到全部所述工作节点的完成响应时,判定所述目标数据操作执行结束。
优选的,在所述在接收到数据操作命令后,向mysql数据库集群的全部工作节点发送准备命令之后,还包括:
若超过时间阈值还未接收到任意所述工作节点的响应消息,则向全部所述工作节点发送终止命令,以便所述工作节点执行回滚操作。
第二方面,本申请提供了一种mysql数据库集群的数据操作执行装置,应用于管理节点,该装置包括:
准备命令发送模块:用于在接收到数据操作命令后,向mysql数据库集群的全部工作节点发送准备命令,询问所述工作节点是否能够正常执行目标数据操作;
响应消息接收模块:用于接收各个所述工作节点的响应消息;
提交命令发送模块:用于在全部所述工作节点的响应消息均为是时,向全部所述工作节点发送提交命令,以便所述工作节点执行目标数据操作;
终止命令发送模块:用于在任意所述工作节点的响应消息为否时,向全部所述工作节点发送终止命令,以便所述工作节点执行回滚操作。
第三方面,本申请提供了一种mysql数据库集群的数据操作执行方法,应用于工作节点,该方法包括:
在接收到管理节点发送的准备命令之后,检测自身是否能够正常执行目标数据操作,生成响应消息并发送至所述管理节点;
在接收到所述管理节点发送的提交命令时,执行目标数据操作;
在接收到所述管理节点发送的终止命令时,执行回滚操作;
其中,当且仅当mysql数据库集群中全部工作节点的所述响应消息均为是时,所述管理节点发送所述提交命令,否则所述管理节点发送所述终止命令。
优选的,所述检测自身是否能够正常执行目标数据操作,包括:
根据所述准备命令加载目标资源并执行准备操作,检测自身是否能够正常执行目标数据操作。
优选的,在所述在接收到所述管理节点发送的提交命令时,执行所述目标数据操作之后,还包括:
释放在整个事务期间内占用的资源。
第四方面,本申请提供了一种mysql数据库集群的数据操作执行装置,应用于工作节点,该装置包括:
功能检测模块:用于在接收到管理节点发送的准备命令之后,检测自身是否能够正常执行目标数据操作,生成响应消息并发送至所述管理节点;
数据操作执行模块:用于在接收到所述管理节点发送的提交命令时,执行目标数据操作;
回滚操作执行模块:用于在接收到所述管理节点发送的终止命令时,执行回滚操作;
其中,当且仅当mysql数据库集群中全部工作节点的所述响应消息均为是时,所述管理节点发送所述提交命令,否则所述管理节点发送所述终止命令。
第五方面,本申请提供了一种mysql数据库集群的数据操作执行设备,包括:
存储器:用于存储计算机程序;
处理器:用于执行所述计算机程序,以实现如上所述的应用于管理节点的mysql数据库集群的数据操作执行方法,或如上所述的应用于工作节点的mysql数据库集群的数据操作执行方法。
本申请所提供的一种应用于管理节点的mysql数据库集群的数据操作执行方法,包括:在接收到数据操作命令后,向mysql数据库集群的全部工作节点发送准备命令,询问工作节点是否能够正常执行目标数据操作;接收各个工作节点的响应消息;若全部工作节点的响应消息均为是,则向全部工作节点发送提交命令,以便工作节点执行目标数据操作;若任意工作节点的响应消息为否,则向全部工作节点发送终止命令,以便工作节点执行回滚操作。
可见,该方法在执行数据操作之前先对各个工作节点进行校验,当且仅当各个工作节点均能够正常执行目标数据操作时,管理节点才向工作节点发送提交命令触发真正的目标数据操作,否则发送终止命令触发回滚操作。保证了mysql数据库集群各节点之间数据的一致性,提升了用户查询数据的准确性,避免出现数据错乱问题。
此外,本申请还提供了一种应用于管理节点的mysql数据库集群的数据操作执行装置、一种应用于工作节点的mysql数据库集群的数据操作执行方法及装置、以及一种mysql数据库集群的数据操作执行设备,其技术效果与上述方法的技术效果相对应,这里不再赘述。
附图说明
为了更清楚的说明本申请实施例或现有技术的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请所提供的应用于管理节点的mysql数据库集群的数据操作执行方法实施例的流程图;
图2为本申请所提供的应用于管理节点的mysql数据库集群的数据操作执行装置实施例的功能框图;
图3为本申请所提供的应用于工作节点的mysql数据库集群的数据操作执行方法实施例的流程图;
图4为本申请所提供的应用于工作节点的mysql数据库集群的数据操作执行装置实施例的功能框图;
图5为本申请所提供的mysql数据库集群的数据操作执行过程的一致性校验原理图;
图6为本申请所提供的mysql数据库集群的数据操作执行过程的流程图。
具体实施方式
本申请的核心是提供一种应用于管理节点的mysql数据库集群的数据操作执行方法及装置、一种应用于工作节点的mysql数据库集群的数据操作执行方法及装置、以及一种mysql数据库集群的数据操作执行设备,保证了mysql数据库集群各节点之间数据的一致性,提升了用户查询数据的准确性,避免出现数据错乱问题。
为了使本技术领域的人员更好地理解本申请方案,下面结合附图和具体实施方式对本申请作进一步的详细说明。显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
下面对本申请提供的应用于管理节点的mysql数据库集群的数据操作执行方法实施例进行介绍,参见图1,该实施例包括:
S101、在接收到数据操作命令后,向mysql数据库集群的全部工作节点发送准备命令,询问所述工作节点是否能够正常执行目标数据操作;
S102、接收各个所述工作节点的响应消息;
S103、若全部所述工作节点的响应消息均为是,则向全部所述工作节点发送提交命令,以便所述工作节点执行目标数据操作;
S104、若任意所述工作节点的响应消息为否,则向全部所述工作节点发送终止命令,以便所述工作节点执行回滚操作。
本实施例的目的在于,在mysql数据库集群接收到数据操作命令后,先对集群的各个工作节点进行一致性校验,当且仅当一致性校验通过时,才执行目标数据操作。以此来保证集群各个节点数据的完全统一,保证用户读取数据的准确性。
本实施例中,管理节点是指集群中的Master节点,负责将工作任务下发至各个工作节点,并保持与工作节点的通信正常。工作节点是指集群中的Worker节点,负责执行管理节点下发的具体任务,并保持与管理节点的通信正常。
在一些具体的实施例中,上述数据操作命令具体可以为备份命令或恢复命令,相应的,上述目标数据操作为备份操作或恢复操作。
在上述数据操作命令为备份/恢复命令时,具体实施过程如下:管理节点向各工作节点发送准备命令,判断各个工作节点是否能够正常执行备份/恢复操作;管理节点接收各工作节点的响应消息,根据响应消息再次向工作节点发送提交命令或终止命令,让各个工作节点执行备份/恢复操作或回滚操作。具体的,当全部工作节点的响应消息均为是时,管理节点向工作节点发送提交命令,各个工作节点执行备份/恢复操作;当任意工作节点的响应消息为否时,管理节点向工作节点发送终止命令,各个工作节点执行回滚操作。
在实际应用中,在向全部工作节点发送提交命令之后,还需要等待工作节点返回完成响应。因此,在S103之后,还包括以下过程:等待工作节点的完成响应,在接收到全部工作节点的完成响应时,判定目标数据操作执行结束。
相应的,在S104之后,还包括以下过程:等待工作节点的回滚响应,在接收到全部工作节点的回滚响应时,判定回滚操作执行结束。
值得一提的是,实际应用中,部分工作节点可能存在故障,因此即便管理节点向其发送准备命令也不会收到工作节点返回的响应消息。这种情况下,如果执行目标数据操作就会发生各个工作节点之间数据不一致的情况。因此,针对这种情况,在S101之后,还包括以下过程:若超过时间阈值还未接收到任意工作节点的响应消息,则向全部工作节点发送终止命令,以便工作节点执行回滚操作。
本实施例所提供一种应用于管理节点的mysql数据库集群的数据操作执行方法,在执行数据操作之前先对各个工作节点进行校验,当且仅当各个工作节点均能够正常执行目标数据操作时,管理节点才向工作节点发送提交命令触发真正的目标数据操作,否则发送终止命令触发回滚操作。保证了mysql数据库集群各节点之间数据的一致性,提升了用户查询数据的准确性,避免出现数据错乱问题。
下面对本申请实施例提供的应用于管理节点的mysql数据库集群的数据操作执行装置进行介绍,下文描述的应用于管理节点的mysql数据库集群的数据操作执行装置与上文描述的应用于管理节点的mysql数据库集群的数据操作执行方法可相互对应参照。
如图2所示,本实施例中,应用于管理节点的mysql数据库集群的数据操作执行装置包括:
准备命令发送模块201:用于在接收到数据操作命令后,向mysql数据库集群的全部工作节点发送准备命令,询问所述工作节点是否能够正常执行目标数据操作;
响应消息接收模块202:用于接收各个所述工作节点的响应消息;
提交命令发送模块203:用于在全部所述工作节点的响应消息均为是时,向全部所述工作节点发送提交命令,以便所述工作节点执行目标数据操作;
终止命令发送模块204:用于在任意所述工作节点的响应消息为否时,向全部所述工作节点发送终止命令,以便所述工作节点执行回滚操作。
在一些具体的实施例中,所述数据操作命令包括:备份命令和/或恢复命令。
在一些具体的实施例中,还包括:
完成响应等待模块:用于等待所述工作节点的完成响应,在接收到全部所述工作节点的完成响应时,判定所述目标数据操作执行结束。
在一些具体的实施例中,还包括:
响应超时模块:用于若超过时间阈值还未接收到任意所述工作节点的响应消息,则向全部所述工作节点发送终止命令,以便所述工作节点执行回滚操作。
本实施例的应用于管理节点的mysql数据库集群的数据操作执行装置用于实现前述的应用于管理节点的mysql数据库集群的数据操作执行方法,因此该装置的具体实施方式可见前文中的应用于管理节点的mysql数据库集群的数据操作执行方法的实施例部分,在此不再展开介绍。
下面开始详细介绍本申请提供的应用于工作节点的mysql数据库集群的数据操作执行方法实施例,参见图3,该实施例具体包括:
S301、在接收到管理节点发送的准备命令之后,检测自身是否能够正常执行目标数据操作,生成响应消息并发送至所述管理节点;
S302、在接收到所述管理节点发送的提交命令时,执行目标数据操作;
S303、在接收到所述管理节点发送的终止命令时,执行回滚操作。
本实施例的目的在于,在mysql数据库集群接收到数据操作命令后,先对集群的各个工作节点进行一致性校验,当且仅当一致性校验通过时,才执行目标数据操作。以此来保证集群各个节点数据的完全统一,保证用户读取数据的准确性。因此,本实施例中,当且仅当mysql数据库集群中全部工作节点的所述响应消息均为是时,所述管理节点发送所述提交命令,否则所述管理节点发送所述终止命令。
在一些具体的实施例中,上述目标数据操作为备份操作或恢复操作。
在上述数据操作命令为备份/恢复命令时,具体实施过程如下:工作节点接收管理节点发送的准备命令,之后工作节点检测自身是否能够正常执行备份/恢复操作,根据检测结果生成响应消息并发送至管理节点。之后根据管理节点再次发送来的命令,执行备份/恢复操作或回滚操作。具体的,管理节点发送的命令是提交命令时,工作节点执行备份/恢复操作;管理节点发送的命令是终止命令时,工作节点执行回滚操作。
实际应用中,上述S301的过程具体为:根据所述准备命令加载目标资源并执行准备操作,检测自身是否能够正常执行目标数据操作。需要说明的是,此时工作节点并没有执行真正的目标数据操作。
作为一种具体的实施方式,在S302或S303之后,还包括以下过程:释放在整个事务期间内占用的资源。
此外,实际应用中,工作节点在执行目标数据操作或回滚操作之后,还需要向管理节点发送相应的响应,从而告知管理节点操作已完成。因此,在S302之后,还包括以下过程:向管理节点发送完成响应。在S303之后,还包括以下过程:向管理节点发送回滚响应。
可见,本实施例提供的一种应用于工作节点的mysql数据库集群的数据操作执行方法,在执行数据操作之前,先根据管理节点发送的准备命令对自身进行检测,判断自身是否能够正常执行目标数据操作,并向管理节点发送响应消息。之后,如果接收到管理节点发送的提交命令,则执行目标数据操作,如果接收到管理节点发送的终止命令,则执行数据回滚操作。需要说明的是,当且仅当全部工作节点的响应消息均为是时,管理节点才会发送提交命令,因此该方法保证了mysql数据库集群各节点之间数据的一致性,提升了用户查询数据的准确性,避免出现数据错乱问题。
下面对本申请实施例提供的应用于工作节点的mysql数据库集群的数据操作执行装置进行介绍,下文描述的应用于工作节点的mysql数据库集群的数据操作执行装置与上文描述的应用于工作节点的mysql数据库集群的数据操作执行方法可相互对应参照。
如图4所示,本实施例中,应用于工作节点的mysql数据库集群的数据操作执行装置包括:
功能检测模块401:用于在接收到管理节点发送的准备命令之后,检测自身是否能够正常执行目标数据操作,生成响应消息并发送至所述管理节点;
数据操作执行模块402:用于在接收到所述管理节点发送的提交命令时,执行目标数据操作;
回滚操作执行模块403:用于在接收到所述管理节点发送的终止命令时,执行回滚操作;
其中,当且仅当mysql数据库集群中全部工作节点的所述响应消息均为是时,所述管理节点发送所述提交命令,否则所述管理节点发送所述终止命令。
在一些具体的实施例中,功能检测模块具体用于:
根据所述准备命令加载目标资源并执行准备操作,检测自身是否能够正常执行目标数据操作。
在一些具体的实施例中,还包括:
资源释放模块:用于释放在整个事务期间内占用的资源。
本实施例的应用于工作节点的mysql数据库集群的数据操作执行装置用于实现前述的应用于工作节点的mysql数据库集群的数据操作执行方法,因此该装置的具体实施方式可见前文中的应用于工作节点的mysql数据库集群的数据操作执行方法的实施例部分,在此不再展开介绍。
上文分别以管理节点和工作节点为执行主体,对mysql数据库集群的数据操作执行过程进行了介绍。下面以整个集群为执行主体,对mysql数据库集群的数据操作执行过程进行综合描述。
本实施例在mysql数据库集群引入了一致性校验装置,如图5所示,将备份/恢复过程分为两个阶段:准备阶段和提交阶段,包含两种角色:协调者和参与者,其中管理节点对应一致性校验装置中的“协调者”,工作节点对应一致性校验装置中的“参与者”。
整体实施流程如图6所示,下面对实施过程作详细介绍:
准备阶段的实施过程如下:
1、协调者向所有参与者发送准备命令(prepare命令),询问参与者是否能够正常执行备份/恢复操作,等待个参与者的响应;
2、所有参与者收到准备命令,获取相应资源,比如锁资源,执行准备操作,判断是否可以正常执行备份/恢复操作,需要说明的是,此时并没有真正执行备份/恢复操作;
3、各参与者向协调者发送响应消息。如果参与者能够正常执行备份/恢复操作,则返回“yes”否则返回“no”。
提交阶段根据一致性校验是否通过,分以下两部分:
第一部分,当协调者从所有参与者获得的响应消息都为“yes”时,实施过程如下:
1、协调者向所有参与接发出提交命令(commit命令);
2、参与者正式完成备份/恢复操作,并释放在整个事务期间内占用的资源;
3、参与者向协调者发送“完成”消息;
4、协调者收到所有参与者反馈的“完成”消息后,备份/恢复过程结束。
第二部分,当任意参与者在准备阶段返回的响应消息为“no”,或者协调者在准备阶段的询问超时之前无法获取所有参与者的响应消息时,实施过程如下:
1、协调者向所有参与者发出终止命令;
2、参与者将之前执行的本地操作进行回滚,并释放在整个事务期间内占用的资源;
3、参与者向协调者发送“回滚完成”消息;
4、协调者收到所有参与者反馈的“回滚完成”消息后,取消事务。
综上,通过引入一致性校验装置,在mysql集群数据库执行备份/还原操作时,预先判断集群中各个工作节点是否具备正常执行备份/恢复操作的条件,如果集群中所有工作节点都具备该条件,管理节点发送提交命令让各工作节点执行备份/恢复操作,否则发送终止命令让各工作节点执行回滚操作。保证集群中各个节点的操作保持一致,要么全部执行,要么都不执行,保证了mysql集群数据库数据的准确性、完整性和一致性。
最后,本申请提供了一种mysql数据库集群的数据操作执行设备,包括:
存储器:用于存储计算机程序;
处理器:用于执行所述计算机程序,以实现如上文所述的应用于管理节点的mysql数据库集群的数据操作执行方法,或如上文所述的应用于工作节点的mysql数据库集群的数据操作执行方法。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上对本申请所提供的方案进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

Claims (10)

1.一种mysql数据库集群的数据操作执行方法,其特征在于,应用于管理节点,该方法包括:
在接收到数据操作命令后,向mysql数据库集群的全部工作节点发送准备命令,询问所述工作节点是否能够正常执行目标数据操作;
接收各个所述工作节点的响应消息;
若全部所述工作节点的响应消息均为是,则向全部所述工作节点发送提交命令,以便所述工作节点执行目标数据操作;
若任意所述工作节点的响应消息为否,则向全部所述工作节点发送终止命令,以便所述工作节点执行回滚操作。
2.如权利要求1所述的方法,其特征在于,所述数据操作命令包括:备份命令和/或恢复命令。
3.如权利要求1所述的方法,其特征在于,在所述向全部所述工作节点发送提交命令,以便所述工作节点执行目标数据操作之后,还包括:
等待所述工作节点的完成响应,在接收到全部所述工作节点的完成响应时,判定所述目标数据操作执行结束。
4.如权利要求1-3任意一项所述的方法,其特征在于,在所述在接收到数据操作命令后,向mysql数据库集群的全部工作节点发送准备命令之后,还包括:
若超过时间阈值还未接收到任意所述工作节点的响应消息,则向全部所述工作节点发送终止命令,以便所述工作节点执行回滚操作。
5.一种mysql数据库集群的数据操作执行装置,其特征在于,应用于管理节点,该装置包括:
准备命令发送模块:用于在接收到数据操作命令后,向mysql数据库集群的全部工作节点发送准备命令,询问所述工作节点是否能够正常执行目标数据操作;
响应消息接收模块:用于接收各个所述工作节点的响应消息;
提交命令发送模块:用于在全部所述工作节点的响应消息均为是时,向全部所述工作节点发送提交命令,以便所述工作节点执行目标数据操作;
终止命令发送模块:用于在任意所述工作节点的响应消息为否时,向全部所述工作节点发送终止命令,以便所述工作节点执行回滚操作。
6.一种mysql数据库集群的数据操作执行方法,其特征在于,应用于工作节点,该方法包括:
在接收到管理节点发送的准备命令之后,检测自身是否能够正常执行目标数据操作,生成响应消息并发送至所述管理节点;
在接收到所述管理节点发送的提交命令时,执行目标数据操作;
在接收到所述管理节点发送的终止命令时,执行回滚操作;
其中,当且仅当mysql数据库集群中全部工作节点的所述响应消息均为是时,所述管理节点发送所述提交命令,否则所述管理节点发送所述终止命令。
7.如权利要求6所述的方法,其特征在于,所述检测自身是否能够正常执行目标数据操作,包括:
根据所述准备命令加载目标资源并执行准备操作,检测自身是否能够正常执行目标数据操作。
8.如权利要求6所述的方法,其特征在于,在所述在接收到所述管理节点发送的提交命令时,执行所述目标数据操作之后,还包括:
释放在整个事务期间内占用的资源。
9.一种mysql数据库集群的数据操作执行装置,其特征在于,应用于工作节点,该装置包括:
功能检测模块:用于在接收到管理节点发送的准备命令之后,检测自身是否能够正常执行目标数据操作,生成响应消息并发送至所述管理节点;
数据操作执行模块:用于在接收到所述管理节点发送的提交命令时,执行目标数据操作;
回滚操作执行模块:用于在接收到所述管理节点发送的终止命令时,执行回滚操作;
其中,当且仅当mysql数据库集群中全部工作节点的所述响应消息均为是时,所述管理节点发送所述提交命令,否则所述管理节点发送所述终止命令。
10.一种mysql数据库集群的数据操作执行设备,其特征在于,包括:
存储器:用于存储计算机程序;
处理器:用于执行所述计算机程序,以实现如权利要求1-4任意一项所述的应用于管理节点的mysql数据库集群的数据操作执行方法,或如权利要求6-8任意一项所述的应用于工作节点的mysql数据库集群的数据操作执行方法。
CN202011568388.7A 2020-12-25 2020-12-25 一种mysql数据库集群的数据操作执行方法、装置及设备 Active CN112685497B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011568388.7A CN112685497B (zh) 2020-12-25 2020-12-25 一种mysql数据库集群的数据操作执行方法、装置及设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011568388.7A CN112685497B (zh) 2020-12-25 2020-12-25 一种mysql数据库集群的数据操作执行方法、装置及设备

Publications (2)

Publication Number Publication Date
CN112685497A true CN112685497A (zh) 2021-04-20
CN112685497B CN112685497B (zh) 2024-02-13

Family

ID=75451991

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011568388.7A Active CN112685497B (zh) 2020-12-25 2020-12-25 一种mysql数据库集群的数据操作执行方法、装置及设备

Country Status (1)

Country Link
CN (1) CN112685497B (zh)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102955801A (zh) * 2011-08-25 2013-03-06 中兴通讯股份有限公司 基于分布式数据库系统的数据控制方法及系统
CN103885854A (zh) * 2012-12-19 2014-06-25 华为技术有限公司 一种数据备份方法、装置及系统
US20170262519A1 (en) * 2010-12-23 2017-09-14 Eliot Horowitz System and method for determining consensus within a distributed database
JP2019074912A (ja) * 2017-10-16 2019-05-16 株式会社東芝 ストレージシステムおよび制御方法
WO2019169998A1 (zh) * 2018-03-08 2019-09-12 华为技术有限公司 选择数据节点的方法、系统以及相关设备
US20200143337A1 (en) * 2018-11-02 2020-05-07 Figure Technologies, Inc. Secure computer network-based platform
CN111143389A (zh) * 2019-12-27 2020-05-12 腾讯科技(深圳)有限公司 事务执行方法、装置、计算机设备及存储介质
CN111737273A (zh) * 2020-06-02 2020-10-02 北京人大金仓信息技术股份有限公司 事务提交方法、装置、协调节点及存储介质

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170262519A1 (en) * 2010-12-23 2017-09-14 Eliot Horowitz System and method for determining consensus within a distributed database
CN102955801A (zh) * 2011-08-25 2013-03-06 中兴通讯股份有限公司 基于分布式数据库系统的数据控制方法及系统
CN103885854A (zh) * 2012-12-19 2014-06-25 华为技术有限公司 一种数据备份方法、装置及系统
JP2019074912A (ja) * 2017-10-16 2019-05-16 株式会社東芝 ストレージシステムおよび制御方法
WO2019169998A1 (zh) * 2018-03-08 2019-09-12 华为技术有限公司 选择数据节点的方法、系统以及相关设备
US20200143337A1 (en) * 2018-11-02 2020-05-07 Figure Technologies, Inc. Secure computer network-based platform
CN111143389A (zh) * 2019-12-27 2020-05-12 腾讯科技(深圳)有限公司 事务执行方法、装置、计算机设备及存储介质
CN111737273A (zh) * 2020-06-02 2020-10-02 北京人大金仓信息技术股份有限公司 事务提交方法、装置、协调节点及存储介质

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
夏秀峰;王涛;: "私有云环境下基于HDFS的PDM数据备份策略", 沈阳航空航天大学学报, no. 04 *
廖枝平;刘嵩;涂立;: "基于邻居节点带宽监测的P2P内容多播", 计算机与现代化, no. 06 *

Also Published As

Publication number Publication date
CN112685497B (zh) 2024-02-13

Similar Documents

Publication Publication Date Title
CN108845866B (zh) 处理分布式事务的方法和装置
CN103885854A (zh) 一种数据备份方法、装置及系统
CN109783204A (zh) 一种分布式事务处理方法、装置及存储介质
CN110909076A (zh) 一种存储集群数据同步方法、装置、设备及存储介质
CN110716793A (zh) 一种分布式事务的执行方法、装置、设备及存储介质
US9170837B2 (en) Transaction concurrent execution control system, method and program for carrying out a control of concurrently executing a transaction, including measuring execution time from starting to ending of transaction execution
CN104182683A (zh) 一种联机事务的监控方法、装置及系统
CN112148436B (zh) 去中心化的tcc事务管理方法、装置、设备及系统
CN115994053A (zh) 数据库备机的并行回放方法、装置、电子设备及介质
CN110599305A (zh) 业务处理方法、装置及存储介质
CN115220876A (zh) 虚拟资源创建方法、装置、程序产品、介质及电子设备
CN109324549B (zh) 一种双主控设备配置方法及双主控设备
CN109710596B (zh) 数据清理方法、装置、设备及计算机可读存储介质
CN105574026A (zh) 非关系型数据库支持事务的方法及装置
WO2017067392A1 (zh) 工作流异常处理方法及系统
CN112685497B (zh) 一种mysql数据库集群的数据操作执行方法、装置及设备
CN111488367A (zh) 数据一致性的实现方法、装置、设备及计算机存储介质
CN110543413A (zh) 业务系统测试方法、装置、设备及存储介质
CN111124751A (zh) 数据恢复方法及系统、数据存储节点、数据库管理节点
CN105630626B (zh) 事务备份处理方法及装置
CN111159298A (zh) 业务请求处理方法、装置、电子设备及存储介质
CN112379952B (zh) 一种跨进程回调的实现方法
CN110908821A (zh) 任务失败管理的方法、装置、设备和存储介质
CN111858191A (zh) 一种双活存储控制方法、装置、设备及存储介质
CN111679812A (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
GR01 Patent grant
GR01 Patent grant