CN106850759A - MySQL数据库集群处理方法及其处理*** - Google Patents

MySQL数据库集群处理方法及其处理*** Download PDF

Info

Publication number
CN106850759A
CN106850759A CN201611266752.8A CN201611266752A CN106850759A CN 106850759 A CN106850759 A CN 106850759A CN 201611266752 A CN201611266752 A CN 201611266752A CN 106850759 A CN106850759 A CN 106850759A
Authority
CN
China
Prior art keywords
database
mysql database
lvs
mysql
services device
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
CN201611266752.8A
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.)
Guangzhou Qinjiayuan Technology Industrial Co Ltd
Original Assignee
Guangzhou Qinjiayuan Technology Industrial 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 Guangzhou Qinjiayuan Technology Industrial Co Ltd filed Critical Guangzhou Qinjiayuan Technology Industrial Co Ltd
Priority to CN201611266752.8A priority Critical patent/CN106850759A/zh
Publication of CN106850759A publication Critical patent/CN106850759A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1031Controlling of the operation of servers by a load balancer, e.g. adding or removing servers that serve requests
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2458Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
    • G06F16/2471Distributed queries
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1036Load balancing of requests to servers for services different from user content provisioning, e.g. load balancing across domain name servers

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Probability & Statistics with Applications (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Fuzzy Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

一种MySQL数据库集群处理方法及其处理***,该方法包括:在第一步骤中,MySQL数据库集群包括一个用于写入的主MySQL数据库和多个用于查询的从MySQL数据库,用户通过web访问所述MySQL数据库集群;在第二步骤中,当web访问为写入、更新或删除请求时,所述主MySQL数据库响应该请求,当web访问为查询请求时,包括主LVS和从LVS的负载均衡器(LVS)接收到查询请求后,虚拟IP地址(VIP)监控主LVS和从LVS是否可用;在第三步骤中,Keepalived模块监测从MySQL数据库对应的数据库查询服务器是否可用,自动把存在问题的数据库查询服务器踢出集群,并按照预定的权重分配查询任务;在第四步骤中,接收所述查询任务的数据库查询服务器查询并将查询结果返回给用户。

Description

MySQL数据库集群处理方法及其处理***
技术领域
本发明属于通信领域,特别是涉及一种MySQL数据库集群处理方法及MySQL数据库集群处理***。
背景技术
随着大数据时代的到来,数据的规模的不断增长,数据查询的需求越来越频繁。用户对数据查询速度及数据查询服务的不间断的要求越来越强烈,不希望访问查询数据的时候等待时间过长,甚至看到“查询超时”或者“数据库繁忙”的情况。单一的数据库是无法支撑因数据快速增长和查询量快速增长而带来的存储和计算强度的相应快速增大。在这种情况下,若购买新的价格更贵,性能更好的数据库服务器做升级而将现有数据库服务器利淘汰,则将必是一种对现有硬件资源的极度浪费,单台数据库服务器的性能无论多强大,也必然是无法满足不断的数据量和查询量的提升,硬件的一次次升级成本和一次次费用投入也将是永无止境的资源浪费,造成原有数据库扩展成本太高,甚至演变成不可扩展的***,需要推倒重来的困境。
专利文献CN102594697 A公开一种负载均衡方法,所述负载均衡方法适用于控制和转发分离的开放流网络,包括:接收第一开放流交换机发送来的与开放流控制器建立连接的请求消息;从连接信息数据库中选择与开放流交换机建立连接的数量最少的开放流控制器作为第一开放流控制器,所述连接信息数据库保存至少两个开放流控制器标识,并且保存所述至少两个开放流控制器标识对应的开放流控制器与开放流交换机建立连接的数量;将所述建立连接的请求消息转发至所述第一开放流控制器;接收更新消息,更新所述连接信息数据库中所述第一开放流控制器与开放流交换机建立连接的数量。该专利在开放流网络中存在多个开放流控制器的情况下,能够实现开放流控制器之间负载均衡,但该专利无法针对数据写入,更新,删除请求和占绝大多数访问的查询请求进行分别处理,不能解决数据查询能力的可扩展性,无法防止自身的单点故障导致整个集群无法提供服务,不具备高可用性,扩展灵活性,低扩展成本。
专利文献CN104036025 A公开的一种基于分布式的海量日志采集***通过在目标主机上安装Agent进程,对目标主机的文本、应用程序、数据库等日志信息进行有选择地定向推送到服务器集群的统一访问接口,服务器端采用了分布式缓存与实时流处理框架技术;该***包括数据源层、分布式缓存层、分布式存储与计算层、业务处理层、可视化展示层和统一调度与管理模块;数据源层,由数据采集组件(生产者)模块对各个节点上面的文本、应用程序、数据库等进行采集,推送到分布式缓存层;分布式缓存层,由LVS对各个节点的消息队列组件进行负载均衡,提供一个统一的接口来接收并写入数据源节点推送过来的数据,等待分布式存储与计算层的数据采集组件(消费者)来读取;分布式存储与计算层,提供存储与计算的功能,包括数据采集组件(消费者)模块、离线计算模块、实时计算模块、分布式存储和搜索引擎;其中,数据采集组件(消费者)模块负责对分布式缓存层进行数据读取;离线计算模块由Hadoop及其生态***组成;实时计算模块由Storm组成;业务处理层,提供统计分析和数据挖掘的功能与服务,由上层进行调用;可视化展示层,提供普通查询、全文检索、报表展示、导入导出等功能;统一调度与管理模块,对上述5层进行统一的调度与管理,基于工作流,自动化处理。该专利使用了Storm实时流处理框架技术,因此,可以近实时地对Kafka分布式缓存中的消息进行处理并分类,但该专利结构步骤复杂且无法针对数据写入,更新,删除请求和占绝大多数访问的查询请求进行分别处理,不能解决数据查询能力的可扩展性,无法防止自身的单点故障导致整个集群无法提供服务,不具备高可用性,扩展灵活性,低扩展成本。
专利文献CN1560742 A公开的一种基于改进的linux虚拟服务器架构的开放式网络计算平台,该计算平台包括基于改进的linux虚拟服务器架构的服务器***(20)和贡献空闲计算资源的志愿机***(21);服务器***(20)包括前端机(6)和m台昊宇服务器(7.1,……,7.m),m为正整数;志愿机***(21)包括n台昊宇志愿机(8.1,……,8.n),n为正整数;前端机(6)包括负载均衡模块(18)和前端机备份模块(19);其中,负载均衡模块(18)当昊宇志愿机将请求发送给前端机时,将请求转发到昊宇服务器的调度模块(13)上;前端机备份模块(19)根据自适应策略建立并维护昊宇服务器之间的备份关系向量表,并将该备份关系向量表发送给服务器备份模块(12);昊宇服务器(7)包括存储***(9)、应用模块(10)、监控模块(11)、服务器备份模块(12)和调度模块(13),其中,存储***包括数据库***和文件***;应用模块(10)用于接收客户提交的应用,并将应用划分成计算量小的任务,再通过命令将应用信息和任务信息存入数据库***,应用的二进制代码和任务的数据文件存入文件***;监控模块(11)用于读取数据库***中的信息,处理后加以显示,以监控昊宇服务器的运转状况;服务器备份模块(12)根据备份关系向量表,将存储***中的数据库信息和文件信息备份到对应的服务器上;调度模块(13)当昊宇志愿机中的通信模块(16)请求计算任务时,根据应用模块(10)写入数据库***中的任务信息,统一调度任务,通过昊宇志愿机中的通信模块(16)分配给志愿机执行;还用于在通信模块(16)返回计算结果以后,将结果文件存放到文件***中,并修改数据库***中的任务信息;昊宇志愿机(8)包括志愿者接口模块(14)、控制模块(15)、通信模块(16)和计算模块(17);其中,志愿者接口模块(14)用于实时监听并执行志愿者发出的命令,根据命令修改配置文件中相应的项;控制模块(15)循环根据配置文件的设置,当启动计算的条件满足时,启动通信模块(16),向昊宇服务器请求计算任务,当调度模块(13)返回计算任务后,启动计算模块(17),以最低优先级计算任务,在计算过程中通信模块(16)周期性地向调度模块(13)发送“alive”信息,并将计算结果通过通信模块(16)返回给调度模块(13)。该专利具有LVS架构的一切优良特性,但该专利结构步骤复杂且无法针对数据写入,更新,删除请求和占绝大多数访问的查询请求进行分别处理,无法防止自身的单点故障导致整个集群无法提供服务,不具备扩展灵活性和低扩展成本。
发明内容
关于本发明所要解决的技术问题,其具体需求如下:针对数据写入,更新,删除请求和占绝大多数访问的查询请求进行分别处理,解决数据查询能力的可扩展性,防止自身的单点故障导致整个集群无法提供服务,具备高可用性,扩展灵活性,低扩展成本。
在背景技术部分中公开的上述信息仅仅用于增强对本发明背景的理解,因此可能包含不构成在本国中本领域普通技术人员公知的现有技术的信息。
本发明的目的是通过以下技术方案予以实现。
根据本发明的一方面,一种MySQL数据库集群处理方法包括以下步骤:
在第一步骤中,MySQL数据库集群包括一个用于写入的主MySQL数据库和多个用于查询的从MySQL数据库,用户通过web访问所述MySQL数据库集群。
在第二步骤中,当web访问为写入、更新或删除请求时,所述主MySQL数据库响应该请求,当web访问为查询请求时,包括主LVS和从LVS的负载均衡器接收到查询请求后,虚拟IP地址监控主LVS和从LVS是否可用。
在第三步骤中,Keepalived模块监测从MySQL数据库对应的数据库查询服务器是否可用,自动把存在问题的数据库查询服务器踢出集群,并按照预定的权重分配查询任务。
在第四步骤中,接收所述查询任务的数据库查询服务器查询并将查询结果返回给用户。
优选地,在第三步骤中,Keepalived模块监测主LVS是否可用,然后Keepalived模块中的调度器根据各个数据库查询服务器的负载情况动态地选择一台数据库查询服务器,将请求报文的数据帧的目标MAC地址改为所述数据库查询服务器的MAC地址。
优选地,在第三步骤中,所述数据库查询服务器接收到请求时,目标IP为所述虚拟IP地址,然后所述数据库查询服务器响应请求,之后根据其路由信息将响应的数据包发送回给用户,并且源IP地址为虚拟IP地址。
优选地,在第二步骤中,负载均衡器为DNS混合负载均衡器、VS/TUN或VS/DR。
优选地,在第三步骤中,当存在问题的数据库查询服务器工作正常后,Keepalived模块自动将其加入到MySQL数据库集群。
优选地,多个用于查询的从MySQL数据库实时同步所述主MySQL数据库。
优选地,在第三步骤中,所述数据库查询服务器为云端服务器。
根据本发明的另一方面,一种实施所述的MySQL数据库集群处理方法的MySQL数据库集群处理***包括服务器群、负载均衡器和Keepalived模块,所述服务器群包括用于承载主MySQL数据库的主服务器和多个用于承载从MySQL数据库的数据库查询服务器,负载均衡器包括主LVS和从LVS,Keepalived模块中设有调度器。
优选地,处理***包括用于执行命令的处理器、用于通信的通信总线和存储命令的存储器。
优选地,所述处理器是通用处理器、数字信号处理器、专用集成电路ASIC,现场可编程门阵列FPGA、模拟电路或数字电路,所述存储器包括一个或多个只读存储器ROM、随机存取存储器RAM、快闪存储器或电子可擦除可编程只读存储器EEPROM。
上述说明仅是本发明技术方案的概述,为了能够使得本发明的技术手段更加清楚明白,达到本领域技术人员可依照说明书的内容予以实施的程度,并且为了能够让本发明的上述和其它目的、特征和优点能够更明显易懂,下面以本发明的具体实施方式进行举例说明。
附图说明
通过阅读下文优选的具体实施方式中的详细描述,本发明各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。说明书附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。显而易见地,下面描述的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。而且在整个附图中,用相同的附图标记表示相同的部件。
在附图中:
图1是根据本发明一个实施例的MySQL数据库集群处理方法的步骤示意图;
图2是根据本发明一个实施例的实施MySQL数据库集群处理方法的逻辑流程图;
图3是根据本发明一个实施例的实施MySQL数据库集群处理方法的工作流程图。
图4是根据本发明一个实施例的实施MySQL数据库集群处理方法的MySQL数据库集群处理***的结构示意图。
图5是根据本发明一个实施例的实施MySQL数据库集群处理方法的MySQL数据库集群处理***的网络拓扑图。
以下结合附图和实施例对本发明作进一步的解释。
具体实施方式
下面将参照附图更详细地描述本发明的具体实施例。虽然附图中显示了本发明的具体实施例,然而应当理解,可以以各种形式实现本发明而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本发明,并且能够将本发明的范围完整的传达给本领域的技术人员。
需要说明的是,在说明书及权利要求当中使用了某些词汇来指称特定组件。本领域技术人员应可以理解,技术人员可能会用不同名词来称呼同一个组件。本说明书及权利要求并不以名词的差异来作为区分组件的方式,而是以组件在功能上的差异来作为区分的准则。如在通篇说明书及权利要求当中所提及的“包含”或“包括”为一开放式用语,故应解释成“包含但不限定于”。说明书后续描述为实施本发明的较佳实施方式,然所述描述乃以说明书的一般原则为目的,并非用以限定本发明的范围。本发明的保护范围当视所附权利要求所界定者为准。
为便于对本发明实施例的理解,下面将结合附图以几个具体实施例为例做进一步的解释说明,且各个附图并不构成对本发明实施例的限定。
图1为本发明的一个实施例的MySQL数据库集群处理方法的步骤示意图,本发明实施例将结合图1进行具体说明。
如图1所示,本发明的一个实施例提供了一种MySQL数据库集群处理方法,MySQL数据库集群处理方法包括以下步骤:
在第一步骤S1中,MySQL数据库集群包括一个用于写入的主MySQL数据库和多个用于查询的从MySQL数据库,用户通过web访问所述MySQL数据库集群。
在第二步骤S2中,当web访问为写入、更新或删除请求时,所述主MySQL数据库响应该请求,当web访问为查询请求时,包括主LVS和从LVS的负载均衡器LVS接收到查询请求后,虚拟IP地址VIP监控主LVS和从LVS是否可用。
在第三步骤S3中,Keepalived模块监测从MySQL数据库对应的数据库查询服务器是否可用,自动把存在问题的数据库查询服务器踢出集群,并按照预定的权重分配查询任务。
在第四步骤S4中,接收所述查询任务的数据库查询服务器查询并将查询结果返回给用户。
在一个实施例中,本发明的MySQL数据库集群处理方法以实现Linux虚拟服务器LVS+keeplived负载均衡数据mysql运维,根据web请求触发数据查询,分发给后端的数据库mysql查询服务器集群处理数据查询任务。主从数据库mysql查询LVS通过keepalived相互作健康监测,接收对应的查询请求,按keepalived的权重设置分配查询任务到后端的数据库mysql查询集群内对应的服务器。通过keepalived对后端的数据库mysql查询服务器的状态,如果有一台数据库mysql查询服务器死机,或工作出现故障,Keepalived将检测到,并将有故障的服务器从LVS***中踢除,同时使用其他服务器代替该服务器的工作,当该数据库mysql查询服务器恢复正常后,Keepalived自动将该数据库mysql查询服务器自动加入到该LVS***中,这些工作全部自动完成,不需要人工干涉,需要人工做的只是下线修复故障的服务器。MySQL是一个关系型数据库管理***,MySQL是一种关联数据库管理***,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。MySQL所使用的SQL语言是用于访问数据库的最常用标准化语言。MySQL可采用双授权政策,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择MySQL作为网站数据库。由于其性能卓越,搭配PHP和Apache,Nginx可组成良好的开发环境。
图2是根据本发明一个实施例的实施MySQL数据库集群处理方法的逻辑流程图,步骤1:用户通过web访问触发数据库查询请求。步骤2:负载均衡的VIP会相互监控查询库的主LVS和查询库的从LVS是否可用。步骤3:无论是查询库的主LVS还是查询库的从LVS接到用户的查询请求后,都会对后端的数据库mysql查询服务器做健康监测,自动把有问题的数据库mysql查询服务器踢出集群,并按照keepalived设置的权重分配查询任务。步骤4:数据库mysql查询服务器把查询结果返回给用户。
本发明的优选的实施方式中,在第三步骤S3中,Keepalived模块监测主LVS是否可用,然后Keepalived模块中的调度器根据各个数据库查询服务器的负载情况动态地选择一台数据库查询服务器,将请求报文的数据帧的目标MAC地址改为所述数据库查询服务器的MAC地址。
本发明的优选的实施方式中,在第三步骤S3中,所述数据库查询服务器接收到请求时,目标IP为所述虚拟IP地址VIP,然后所述数据库查询服务器响应请求,之后根据其路由信息将响应的数据包发送回给用户,并且源IP地址为虚拟IP地址VIP。
本发明的优选的实施方式中,在第二步骤S2中,负载均衡器LVS为DNS混合负载均衡器、VS/TUN或VS/DR。
本发明的优选的实施方式中,在第三步骤S3中,当存在问题的数据库查询服务器工作正常后,Keepalived模块自动将其加入到MySQL数据库集群。
本发明的优选的实施方式中,多个用于查询的从MySQL数据库实时同步所述主MySQL数据库。
本发明的优选的实施方式中,在第三步骤S3中,所述数据库查询服务器为云端服务器。
图3是根据本发明一个实施例的实施MySQL数据库集群处理方法的工作流程图。如图3所示,在一个实施例中,将报文直接路由给目标真实服务器。在DR模式中,首先利用Keepalived模块2的健康监测机制监测主的Lvs是否健康作出Lvs的高可用性,然后通过keepalived调度器根据各个真实服务器的负载情况,连接数多少等,动态地选择一台服务器,不修改目标IP地址和目标端口,也不封装IP报文,而是将请求报文的数据帧的目标MAC地址改为真实服务器的MAC地址。然后再将修改的数据帧在服务器组的局域网上发送。因为数据帧的MAC地址是真实服务器的MAC地址,并且又在同一个局域网。那么根据局域网的通讯原理,真实复位是一定能够收到由LVS+KEEPALIVED发出的数据包。真实服务器接收到请求数据包的时候,解开IP包头查看到的目标IP是VIP,,此时只有自己的IP符合目标IP才会接收进来,所以我们需要在本地的回环借口上面配置VIP。另:由于网络接口都会进行ARP广播响应,但集群的其他机器都有这个VIP的lo接口,都响应就会冲突。所以我们需要把真实服务器的lo接口的ARP响应关闭掉。然后真实服务器做成请求响应,之后根据自己的路由信息将这个响应数据包发送回给客户,并且源IP地址还是VIP。
数据流的整个流程如下:
1、通过在调度器LVS+KEEPALIVED上修改数据包的目的MAC地址实现转发。注意源地址仍然是CIP,目的地址仍然是VIP地址。
2、请求的报文经过调度器,而RS响应处理后的报文无需经过调度器LVS+KEEPALIVED,因此并发访问量大时使用效率很高。
3、因为DR模式是通过MAC地址改写机制实现转发,因此所有RS节点和调度器LVS+KEEPALIVED只能在一个局域网里面。
4、RS主机需要绑定VIP地址在LO接口上,并且需要配置ARP抑制。
5、RS节点的默认网关不需要配置成LVS+KEEPALIVED,而是直接配置为上级路由的网关,能让RS直接出网就可以。
6、由于DR模式的调度器仅做MAC地址的改写,所以调度器LVS+KEEPALIVED就不能改写目标端口,那么RS服务器就得使用和VIP相同的端口提供服务。
图4是根据本发明一个实施例的实施MySQL数据库集群处理方法的MySQL数据库集群处理***的结构示意图。实施所述的MySQL数据库集群处理方法的MySQL数据库集群处理***包括服务器群1、负载均衡器LVS和Keepalived模块2,所述服务器群1包括用于承载主MySQL数据库的主服务器3和多个用于承载从MySQL数据库的数据库查询服务器4,负载均衡器LVS包括主LVS5和从LVS6,Keepalived模块2中设有调度器7。
本发明的优选的实施方式中,处理***包括用于执行命令的处理器、用于通信的通信总线和存储命令的存储器。
本发明的优选的实施方式中,Keepalived模块主要使用VRRP协议来保存链路的高可用性。而VRRP(Virtual Router Redundancy Protocol)协议本身是用于实现路由器冗余的协议。
本发明的优选的实施方式中,所述处理器是通用处理器、数字信号处理器、专用集成电路ASIC,现场可编程门阵列FPGA、模拟电路或数字电路,所述存储器包括一个或多个只读存储器ROM、随机存取存储器RAM、快闪存储器或电子可擦除可编程只读存储器EEPROM。
为了进一步理解本发明,图5是根据本发明一个实施例的实施MySQL数据库集群处理方法的MySQL数据库集群处理***的网络拓扑图。如图5所示,用户发出查询请求,负载均衡层包括负载均衡器LVS和Keepalived模块2,负载均衡层还可以包括备份的负载均衡器LVS和Keepalived模块2,负载均衡层通过交换机将查询请求连接到数据库查询层,数据库查询层可包括多个从MySQL数据库。
本发明首先解决了多台mysql数据库的数据写入,更新,删除,查询和数据的一致性问题。其次解决了数据查询能力的可扩展性,同时为了防止LVS负载均衡器自身的单点故障导致整个“mysql-查询”集群无法提供服务,因此还得利用Keepalived模块实现LVS负载均衡器的高可用性,负载均衡能够充分的利用现有的网络结构,在网络结构的基础之上扩展“mysql-查询”集群的带宽和网络设备、加强数据查询的可用性及快速性、提高数据查询处理能力,从而提供了一种廉价有效透明的方法,使mysql-查询集群具有高可用性,扩展灵活性,扩展成本低等特点。
尽管以上结合附图对本发明的实施方案进行了描述,但本发明并不局限于上述的具体实施方案和应用领域,上述的具体实施方案仅仅是示意性的、指导性的,而不是限制性的。本领域的普通技术人员在本说明书的启示下和在不脱离本发明权利要求所保护的范围的情况下,还可以做出很多种的形式,这些均属于本发明保护之列。

Claims (10)

1.一种MySQL数据库集群处理方法,其包括以下步骤:
在第一步骤(S1)中,MySQL数据库集群包括一个用于写入的主MySQL数据库和多个用于查询的从MySQL数据库,用户通过web访问所述MySQL数据库集群;
在第二步骤(S2)中,当web访问为写入、更新或删除请求时,所述主MySQL数据库响应该请求,当web访问为查询请求时,包括主LVS和从LVS的负载均衡器(LVS)接收到查询请求后,虚拟IP地址(VIP)监控主LVS和从LVS是否可用;
在第三步骤(S3)中,Keepalived模块监测从MySQL数据库对应的数据库查询服务器是否可用,自动把存在问题的数据库查询服务器踢出集群,并按照预定的权重分配查询任务;
在第四步骤(S4)中,接收所述查询任务的数据库查询服务器查询并将查询结果返回给用户。
2.根据权利要求1所述的MySQL数据库集群处理方法,其特征在于:
在第三步骤(S3)中,Keepalived模块监测主LVS是否可用,然后Keepalived模块中的调度器根据各个数据库查询服务器的负载情况动态地选择一台数据库查询服务器,将请求报文的数据帧的目标MAC地址改为所述数据库查询服务器的MAC地址。
3.根据权利要求2所述的MySQL数据库集群处理方法,其特征在于:
在第三步骤(S3)中,所述数据库查询服务器接收到请求时,目标IP为所述虚拟IP地址(VIP),然后所述数据库查询服务器响应请求,之后根据其路由信息将响应的数据包发送回给用户,并且源IP地址为虚拟IP地址(VIP)。
4.根据权利要求1所述的MySQL数据库集群处理方法,其特征在于:
在第二步骤(S2)中,负载均衡器(LVS)为DNS混合负载均衡器、VS/TUN或VS/DR。
5.根据权利要求2所述的MySQL数据库集群处理方法,其特征在于:
在第三步骤(S3)中,当存在问题的数据库查询服务器工作正常后,Keepalived模块自动将其加入到MySQL数据库集群。
6.根据权利要求1所述的MySQL数据库集群处理方法,其特征在于:
多个用于查询的从MySQL数据库实时同步所述主MySQL数据库。
7.根据权利要求1所述的MySQL数据库集群处理方法,其特征在于:
在第三步骤(S3)中,所述数据库查询服务器为云端服务器。
8.一种实施根据权利要求1-7中任一项所述的MySQL数据库集群处理方法的MySQL数据库集群处理***,处理***包括服务器群(1)、负载均衡器(LVS)和Keepalived模块(2),其特征在于:所述服务器群(1)包括用于承载主MySQL数据库的主服务器(3)和多个用于承载从MySQL数据库的数据库查询服务器(4),负载均衡器(LVS)包括主LVS(5)和从LVS(6),Keepalived模块(2)中设有调度器(7)。
9.根据权利要求8所述的MySQL数据库集群处理***,其特征在于:处理***包括用于执行命令的处理器、用于通信的通信总线和存储命令的存储器。
10.根据权利要求9所述的MySQL数据库集群处理***,其特征在于:所述处理器是通用处理器、数字信号处理器、专用集成电路ASIC,现场可编程门阵列FPGA、模拟电路或数字电路,所述存储器包括一个或多个只读存储器ROM、随机存取存储器RAM、快闪存储器或电子可擦除可编程只读存储器EEPROM。
CN201611266752.8A 2016-12-31 2016-12-31 MySQL数据库集群处理方法及其处理*** Pending CN106850759A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201611266752.8A CN106850759A (zh) 2016-12-31 2016-12-31 MySQL数据库集群处理方法及其处理***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201611266752.8A CN106850759A (zh) 2016-12-31 2016-12-31 MySQL数据库集群处理方法及其处理***

Publications (1)

Publication Number Publication Date
CN106850759A true CN106850759A (zh) 2017-06-13

Family

ID=59116787

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201611266752.8A Pending CN106850759A (zh) 2016-12-31 2016-12-31 MySQL数据库集群处理方法及其处理***

Country Status (1)

Country Link
CN (1) CN106850759A (zh)

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107707654A (zh) * 2017-09-30 2018-02-16 中国联合网络通信集团有限公司 容器镜像数据的管理方法、装置及***
CN108306955A (zh) * 2018-01-24 2018-07-20 北京万得嘉瑞汽车技术有限公司 一种车载终端大规模互联集群方法
CN108763300A (zh) * 2018-04-19 2018-11-06 北京奇艺世纪科技有限公司 一种数据查询方法及装置
CN108960773A (zh) * 2018-06-28 2018-12-07 腾讯科技(深圳)有限公司 业务管理方法、计算机设备和存储介质
CN109542874A (zh) * 2018-11-15 2019-03-29 用友网络科技股份有限公司 导出方法、导出装置、服务器、终端和可读存储介质
CN109558417A (zh) * 2018-11-28 2019-04-02 亚信科技(南京)有限公司 一种数据处理方法和平台
CN109614390A (zh) * 2018-12-06 2019-04-12 无锡华云数据技术服务有限公司 数据库读写分离方法、装置、服务***、设备及介质
CN109922151A (zh) * 2019-03-12 2019-06-21 浪潮通用软件有限公司 一种微服务之间的数据共享方法
CN110012111A (zh) * 2019-04-16 2019-07-12 昆山丘钛微电子科技有限公司 一种数据服务集群***及数据处理方法
CN110493071A (zh) * 2018-05-15 2019-11-22 ***通信集团浙江有限公司 消息***资源均衡装置、方法及设备
CN110879718A (zh) * 2019-11-15 2020-03-13 北京浪潮数据技术有限公司 mariadb升级方法、装置及电子设备和存储介质
CN111078802A (zh) * 2019-12-31 2020-04-28 叮当快药科技集团有限公司 数据库的读写方法及相关装置
CN111131390A (zh) * 2019-11-25 2020-05-08 深圳市瑞云科技有限公司 一种提高云渲染并发数的存储缓存方法
CN111200637A (zh) * 2019-12-20 2020-05-26 新浪网技术(中国)有限公司 一种缓存的处理方法及装置
CN111339180A (zh) * 2019-12-24 2020-06-26 沈阳通用软件有限公司 一种通用的数据库同步方法
CN112416973A (zh) * 2020-11-02 2021-02-26 网宿科技股份有限公司 分布式数据库读写分离的方法、服务器和***
CN112784136A (zh) * 2019-11-05 2021-05-11 阿里巴巴集团控股有限公司 数据查询方法、装置及电子设备
CN112817791A (zh) * 2020-12-31 2021-05-18 西安合智宇信息科技有限公司 一种工作面集群开采状态的移动端监控方法
CN114064414A (zh) * 2021-11-25 2022-02-18 北京志凌海纳科技有限公司 一种高可用的集群状态监控方法及***

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1928873A (zh) * 2006-09-25 2007-03-14 华为技术有限公司 一种实现负荷分担的数据库访问方法及***
CN101115016A (zh) * 2007-08-23 2008-01-30 创新科存储技术(深圳)有限公司 一种实现应用服务器负载均衡的方法及***
CN102254031A (zh) * 2011-08-03 2011-11-23 无锡浙潮科技有限公司 基于批处理请求的Microsoft SQL Server数据库集群
CN105049244A (zh) * 2015-07-02 2015-11-11 浪潮(北京)电子信息产业有限公司 一种负载均衡的方法及***
CN105959145A (zh) * 2016-06-04 2016-09-21 广东中兴新支点技术有限公司 一种适用高可用性集群的并行管理服务器的方法及***
US20160283335A1 (en) * 2015-03-24 2016-09-29 Xinyu Xingbang Information Industry Co., Ltd. Method and system for achieving a high availability and high performance database cluster

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1928873A (zh) * 2006-09-25 2007-03-14 华为技术有限公司 一种实现负荷分担的数据库访问方法及***
CN101115016A (zh) * 2007-08-23 2008-01-30 创新科存储技术(深圳)有限公司 一种实现应用服务器负载均衡的方法及***
CN102254031A (zh) * 2011-08-03 2011-11-23 无锡浙潮科技有限公司 基于批处理请求的Microsoft SQL Server数据库集群
US20160283335A1 (en) * 2015-03-24 2016-09-29 Xinyu Xingbang Information Industry Co., Ltd. Method and system for achieving a high availability and high performance database cluster
CN105049244A (zh) * 2015-07-02 2015-11-11 浪潮(北京)电子信息产业有限公司 一种负载均衡的方法及***
CN105959145A (zh) * 2016-06-04 2016-09-21 广东中兴新支点技术有限公司 一种适用高可用性集群的并行管理服务器的方法及***

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
栾羿鲁: "集群WEB应用下的负载均衡技术研究与应用", 《万方学术电子期刊数据库》 *

Cited By (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107707654B (zh) * 2017-09-30 2019-05-14 中国联合网络通信集团有限公司 容器镜像数据的管理方法、装置及***
CN107707654A (zh) * 2017-09-30 2018-02-16 中国联合网络通信集团有限公司 容器镜像数据的管理方法、装置及***
CN108306955A (zh) * 2018-01-24 2018-07-20 北京万得嘉瑞汽车技术有限公司 一种车载终端大规模互联集群方法
CN108306955B (zh) * 2018-01-24 2021-06-15 北京万得嘉瑞汽车技术有限公司 一种车载终端大规模互联集群方法
CN108763300A (zh) * 2018-04-19 2018-11-06 北京奇艺世纪科技有限公司 一种数据查询方法及装置
CN108763300B (zh) * 2018-04-19 2020-07-31 北京奇艺世纪科技有限公司 一种数据查询方法及装置
CN110493071A (zh) * 2018-05-15 2019-11-22 ***通信集团浙江有限公司 消息***资源均衡装置、方法及设备
CN108960773B (zh) * 2018-06-28 2021-12-14 腾讯科技(深圳)有限公司 业务管理方法、计算机设备和存储介质
CN108960773A (zh) * 2018-06-28 2018-12-07 腾讯科技(深圳)有限公司 业务管理方法、计算机设备和存储介质
CN109542874A (zh) * 2018-11-15 2019-03-29 用友网络科技股份有限公司 导出方法、导出装置、服务器、终端和可读存储介质
CN109558417A (zh) * 2018-11-28 2019-04-02 亚信科技(南京)有限公司 一种数据处理方法和平台
CN109558417B (zh) * 2018-11-28 2023-08-08 亚信科技(南京)有限公司 一种数据处理方法和***
CN109614390A (zh) * 2018-12-06 2019-04-12 无锡华云数据技术服务有限公司 数据库读写分离方法、装置、服务***、设备及介质
CN109922151A (zh) * 2019-03-12 2019-06-21 浪潮通用软件有限公司 一种微服务之间的数据共享方法
CN110012111A (zh) * 2019-04-16 2019-07-12 昆山丘钛微电子科技有限公司 一种数据服务集群***及数据处理方法
CN110012111B (zh) * 2019-04-16 2022-04-15 昆山丘钛微电子科技股份有限公司 一种数据服务集群***及数据处理方法
CN112784136A (zh) * 2019-11-05 2021-05-11 阿里巴巴集团控股有限公司 数据查询方法、装置及电子设备
CN112784136B (zh) * 2019-11-05 2024-06-04 阿里巴巴集团控股有限公司 数据查询方法、装置及电子设备
CN110879718A (zh) * 2019-11-15 2020-03-13 北京浪潮数据技术有限公司 mariadb升级方法、装置及电子设备和存储介质
CN111131390A (zh) * 2019-11-25 2020-05-08 深圳市瑞云科技有限公司 一种提高云渲染并发数的存储缓存方法
CN111131390B (zh) * 2019-11-25 2022-06-21 深圳市瑞云科技有限公司 一种提高云渲染并发数的存储缓存方法
CN111200637A (zh) * 2019-12-20 2020-05-26 新浪网技术(中国)有限公司 一种缓存的处理方法及装置
CN111339180A (zh) * 2019-12-24 2020-06-26 沈阳通用软件有限公司 一种通用的数据库同步方法
CN111339180B (zh) * 2019-12-24 2024-03-29 三六零数字安全科技集团有限公司 一种通用的数据库同步方法
CN111078802A (zh) * 2019-12-31 2020-04-28 叮当快药科技集团有限公司 数据库的读写方法及相关装置
CN112416973A (zh) * 2020-11-02 2021-02-26 网宿科技股份有限公司 分布式数据库读写分离的方法、服务器和***
CN112817791A (zh) * 2020-12-31 2021-05-18 西安合智宇信息科技有限公司 一种工作面集群开采状态的移动端监控方法
CN112817791B (zh) * 2020-12-31 2024-04-26 西安合智宇信息科技有限公司 一种工作面集群开采状态的移动端监控方法
CN114064414A (zh) * 2021-11-25 2022-02-18 北京志凌海纳科技有限公司 一种高可用的集群状态监控方法及***

Similar Documents

Publication Publication Date Title
CN106850759A (zh) MySQL数据库集群处理方法及其处理***
US11736561B2 (en) Load balanced network file accesses
CN106815059B (zh) Linux虚拟服务器LVS自动化运维方法及运维***
CN112087312B (zh) 一种提供边缘服务的方法、装置和设备
US10104010B2 (en) Method and apparatus for allocating resources
CN109032755B (zh) 一种容器服务托管***及提供容器服务的方法
US6597956B1 (en) Method and apparatus for controlling an extensible computing system
CN108833197B (zh) 一种基于云的主动探测方法和探测平台
CN113596110B (zh) 一种面向异构云的云原生微服务平台
CN103581276B (zh) 集群管理装置、***、业务客户端及相应方法
CN103945000B (zh) 一种负载均衡方法及负载均衡器
CN113014611B (zh) 一种负载均衡方法及相关设备
US9847903B2 (en) Method and apparatus for configuring a communication system
CN107079060A (zh) 用于运营商级nat优化的***和方法
CN112015544A (zh) 一种k8s集群的负载均衡方法、装置、设备及存储介质
US20150215394A1 (en) Load distribution method taking into account each node in multi-level hierarchy
CN105577723A (zh) 虚拟化网络中实现负载分担的方法和装置
CN103117947A (zh) 一种负载分担方法及装置
CN104486402A (zh) 一种基于大型网站组合均衡的方法
CN113612688B (zh) 分布式软件定义网络控制***及其构建方法
CN111092921A (zh) 数据采集方法、装置及存储介质
CN109428820A (zh) 一种多线路由方法及***
CN112463755B (zh) 基于hdfs的异构物联网大数据的存储与读取***及方法
CN108809838B (zh) 一种基于树形结构的服务发现处理方法及装置
CN109302302A (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
RJ01 Rejection of invention patent application after publication

Application publication date: 20170613

RJ01 Rejection of invention patent application after publication