CN111090637A - 一种金融级基于A10的高可用MySQL数据库实现方法 - Google Patents
一种金融级基于A10的高可用MySQL数据库实现方法 Download PDFInfo
- Publication number
- CN111090637A CN111090637A CN201911328588.2A CN201911328588A CN111090637A CN 111090637 A CN111090637 A CN 111090637A CN 201911328588 A CN201911328588 A CN 201911328588A CN 111090637 A CN111090637 A CN 111090637A
- Authority
- CN
- China
- Prior art keywords
- database
- financial
- availability
- mysql database
- server
- 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
- 238000000034 method Methods 0.000 title claims abstract description 21
- 238000005516 engineering process Methods 0.000 claims abstract description 6
- 230000000737 periodic effect Effects 0.000 claims description 4
- 230000010076 replication Effects 0.000 claims description 4
- 230000003862 health status Effects 0.000 claims 3
- 230000001737 promoting effect Effects 0.000 abstract description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/202—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
- G06F11/2041—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant with more than one idle spare processing component
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Quality & Reliability (AREA)
- Data Mining & Analysis (AREA)
- Hardware Redundancy (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种金融级基于A10的高可用MySQL数据库实现方法,涉及金融技术领域,该方法如下:应用程序连接A10设备;A10设备搭建双机热备模式工作;A10设备连接MySQL数据库集群和A10设备连接真实服务器。本发明通过两台A10设备实现了负载的主备高可用,防止出现单点故障;A10绑定MGR中多个节点,通过健康检查来自动切换访问请求;MGR技术基于Paxos分布式协议满足金融行业对数据一致性行、业务连续性以及数据库开源可控等要求,对MySQL在金融行业的普及起到积极推动作用;A10+MGR金融级高可用数据库架构做到了RPO=0,保障了数据库高可靠和高可用,满足金融场景下的数据库高要求。
Description
技术领域
本发明涉及金融技术领域,具体是一种金融级基于A10的高可用MySQL数据库实现方法。
背景技术
开源数据库MySQL在金融行业里使用越来越多,尤其以主从复制为架构的高可用方案,此架构存在丢失数据的风险。应用连接到主库,当主库出现宕机等情况,无法保证数据一致性的情况下自动切换到备库。一种金融级基于A10的高可用MySQL数据库实现方法可以解决这个问题,MySQL之间数据复制的基础是二进制日志文件(binary log file)。一台MySQL数据库一旦启用二进制日志后,其作为master,它的数据库中所有操作都会以“事件”的方式记录在二进制日志中,其他数据库作为slave通过一个I/O线程与主服务器保持通信,并监控master的二进制日志文件的变化,如果发现master二进制日志文件发生变化,则会把变化复制到自己的中继日志中,然后slave的一个SQL线程会把相关的“事件”执行到自己的数据库中,以此实现从数据库和主数据库的一致性,也就实现了主从复制;MySQL数据库主从数据库各自有一个IP地址。
而应用服务器JDBC驱动使用IP地址连接到主库IP,当主库出现宕机,应用无法连接到主库,业务受到影响,需要修改应用的配置文件,重启应用服务器,业务连续性无法保障,因此,本领域技术人员提供了一种,以解决上述背景技术中提出的问题。
发明内容
本发明的目的在于提供一种金融级基于A10的高可用MySQL数据库实现方法,以解决上述技术问题。
本发明的目的在于提供一种,以解决上述背景技术中提出的问题。
为实现上述目的,本发明提供如下技术方案:
一种金融级基于A10的高可用MySQL数据库实现方法,所述方法包括如下步骤:
步骤一、应用程序连接A10设备;
步骤二、所述A10设备搭建双机热备模式工作;
步骤三、A10设备连接MySQL数据库集群;
步骤四、A10设备连接真实服务器。
作为本发明进一步的方案:所述步骤二中双机热备模式具体工作原理为其中一台A10设备作为主用设备接收连接并管理服务器,另一台A10设备作为备用设备则监控主用设备,主用设备通过发送被称为心跳消息或健康状况检查的定期消息来监控备用设备,从而确定对等节点的健康状况或状态。两个A10设备搭建双机热备模式,任何一个A10设备出现故障,另一个A10设备会代替故障设备接管工作任务,不会出现单点故障,对业务没有影响。
作为本发明再进一步的方案:步骤三中A10设备连接MySQL数据库集群具体方法为将A10设备通过服务绑定,转发请求到主库,主库宕机failover到新主库,A10设备指向新主库。当主节点宕机,数据库自动failover,对应用透明,不影响业务。
作为本发明再进一步的方案:所述步骤三中MySQL数据库包括一个主数据库和两个辅数据库,所述主数据库和辅助数据库之间的协同工作机理为:用户提交事务时,需要等待至少一个辅数据库收到日志副本,才返回给用户事务成功结束的信号,且收到的确认事务会自动持久化到多数派主机中,以确保数据库的可靠性,此外,所述MySQL数据库由3个节点组成一个复制组,Consensus层为一致性协议层,在事务提交过程中,发生组间通讯,由2个节点决议通过这个事务,事务才能够最终得以提交并响应。通过主数据库和辅助数库之间的协同工作机理,已提交的数据至少有2份副本,当任意一台服务器出现故障,至少还有1台是包含了已提交事务的持久化内容,所以不会影响业务可用性。
作为本发明再进一步的方案:步骤三中MySQL数据库采用MGR技术,基于Paxos分布式协议,具体操作为一个复制组由若干个节点组成,组内各个节点维护各自的数据副本,基于Paxos分布式协议实现原子消息和全局有序消息。
作为本发明再进一步的方案:所述步骤四中A10设备连接真实服务器具体操作为A10设备定义若干个虚拟服务器,每个所述虚拟服务器包括一个IP地址和端口,所述虚拟服务器通过绑定真实服务器的IP地址和端口与不同的真实服务器绑定,所述A10设备定期检查服务群的服务的健康状况。
作为本发明再进一步的方案:所述真实服务器和虚拟服务器的工作原理为客户通过应用程序发送一个请求到虚拟服务器,所述虚拟服务器接收到请求后在真实服务器群中选择一个并将请求转发到该真实服务器。
作为本发明再进一步的方案:所述A10服务系统依照负载均衡算法将服务转向到正常工作的服务器上去。
与现有技术相比,本发明的有益效果是:本发明通过两台A10设备实现了负载的主备高可用,防止出现单点故障。A10可以绑定MGR中多个节点,通过健康检查来自动切换访问请求。MGR技术,基于Paxos分布式协议,实现了数据最终一致性,满足金融行业对数据一致性行要求、业务连续性要求以及数据库开源可控等要求,对MySQL在金融行业的普及起到积极推动作用。A10+MGR金融级高可用数据库架构做到了RPO=0,保障了数据库高可靠和高可用,满足金融场景下的数据库高要求。
具体实施方式
下面将结合本发明实施例中对本发明的技术方案进行清楚、完整地描述,显然,所描 述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例, 本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发 明保护的范围。
一种金融级基于A10的高可用MySQL数据库实现方法,方法包括如下步骤:
步骤一、应用程序连接A10设备;
步骤二、A10设备搭建双机热备模式工作;
步骤三、A10设备连接MySQL数据库集群;
步骤四、A10设备连接真实服务器。
其中,步骤二中双机热备模式具体工作原理为其中一台A10设备作为主用设备接收连接并管理服务器,另一台A10设备作为备用设备则监控主用设备,主用设备通过发送被称为心跳消息或健康状况检查的定期消息来监控备用设备,从而确定对等节点的健康状况或状态。
其中,步骤三中A10设备连接MySQL数据库集群具体方法为将A10设备通过服务绑定,转发请求到主库,主库宕机failover到新主库,A10设备指向新主库。
其中,步骤三中MySQL数据库包括一个主数据库和两个辅数据库,主数据库和辅助数据库之间的协同工作机理为:用户提交事务时,需要等待至少一个辅数据库收到日志副本,才返回给用户事务成功结束的信号,且收到的确认事务会自动持久化到多数派主机中,以确保数据库的可靠性,此外,MySQL数据库由3个节点组成一个复制组,Consensus层为一致性协议层,在事务提交过程中,发生组间通讯,由2个节点决议通过这个事务,事务才能够最终得以提交并响应。
其中,步骤三中MySQL数据库采用MGR技术,基于Paxos分布式协议,具体操作为一个复制组由若干个节点组成,组内各个节点维护各自的数据副本,基于Paxos分布式协议实现原子消息和全局有序消息。
其中,步骤四中A10设备连接真实服务器具体操作为A10设备定义若干个虚拟服务器,每个虚拟服务器包括一个IP地址和端口,虚拟服务器通过绑定真实服务器的IP地址和端口与不同的真实服务器绑定,A10设备定期检查服务群的服务的健康状况。
其中,真实服务器和虚拟服务器的工作原理为客户通过应用程序发送一个请求到虚拟服务器,虚拟服务器接收到请求后在真实服务器群中选择一个并将请求转发到该真实服务器。
其中,A10服务系统依照负载均衡算法将服务转向到正常工作的服务器上去。
本发明的一个具体实施例:
应用程序连接A10设备;
A10设备搭建双机热备模式工作,具体操作为其中一台A10设备作为主用设备接收连接并管理服务器,另一台A10设备作为备用设备则监控主用设备,主用设备通过发送被称为心跳消息或健康状况检查的定期消息来监控备用设备,从而确定对等节点的健康状况或状态;
A10设备连接MySQL数据库集群:具体方法为将A10设备通过服务绑定,转发请求到主库,主库宕机failover到新主库,A10设备指向新主库;其中,MySQL数据库包括一个主数据库和两个辅数据库,主数据库和辅助数据库之间的协同工作机理为:用户提交事务时,需要等待至少一个辅数据库收到日志副本,才返回给用户事务成功结束的信号,且收到的确认事务会自动持久化到多数派主机中,以确保数据库的可靠性,此外,MySQL数据库由3个节点组成一个复制组,Consensus层为一致性协议层,在事务提交过程中,发生组间通讯,由2个节点决议通过这个事务,事务才能够最终得以提交并响应;
其中,MySQL数据库采用MGR技术,基于Paxos分布式协议,具体操作为一个复制组由若干个节点组成,组内各个节点维护各自的数据副本,基于Paxos分布式协议实现原子消息和全局有序消息;
A10设备连接真实服务器具体操作为:A10设备定义若干个虚拟服务器,每个虚拟服务器包括一个IP地址和端口,虚拟服务器通过绑定真实服务器的IP地址和端口与不同的真实服务器绑定,A10设备定期检查服务群的服务的健康状况,真实服务器和虚拟服务器的工作原理为客户通过应用程序发送一个请求到虚拟服务器,虚拟服务器接收到请求后在真实服务器群中选择一个并将请求转发到该真实服务器,当真实服务器出现故障后,A10服务系统依照负载均衡算法将服务转向到正常工作的服务器上去。
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化囊括在本发明内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。
此外,应当理解,虽然本说明书按照实施方式加以描述,但并非每个实施方式仅包含一个独立的技术方案,说明书的这种叙述方式仅仅是为清楚起见,本领域技术人员应当将说明书作为一个整体,各实施例中的技术方案也可以经适当组合,形成本领域技术人员可以理解的其他实施方式。
Claims (8)
1.一种金融级基于A10的高可用MySQL数据库实现方法,其特征在于,所述方法包括如下步骤:
步骤一、应用程序连接A10设备;
步骤二、所述A10设备搭建双机热备模式工作;
步骤三、A10设备连接MySQL数据库集群;
步骤四、A10设备连接真实服务器。
2.根据权利要求1所述的一种金融级基于A10的高可用MySQL数据库实现方法,其特征在于,所述步骤二中双机热备模式具体工作原理为其中一台A10设备作为主用设备接收连接并管理服务器,另一台A10设备作为备用设备则监控主用设备,主用设备通过发送被称为心跳消息或健康状况检查的定期消息来监控备用设备,从而确定对等节点的健康状况或状态。
3.根据权利要求1所述的一种金融级基于A10的高可用MySQL数据库实现方法,其特征在于,所述步骤三中A10设备连接MySQL数据库集群具体方法为将A10设备通过服务绑定,转发请求到主库,主库宕机failover到新主库,A10设备指向新主库。
4.根据权利要求3所述的一种金融级基于A10的高可用MySQL数据库实现方法,其特征在于,所述步骤三中MySQL数据库包括一个主数据库和两个辅数据库,所述主数据库和辅助数据库之间的协同工作机理为:用户提交事务时,需要等待至少一个辅数据库收到日志副本,才返回给用户事务成功结束的信号,且收到的确认事务会自动持久化到多数派主机中,以确保数据库的可靠性,此外,所述MySQL数据库由3个节点组成一个复制组,Consensus层为一致性协议层,在事务提交过程中,发生组间通讯,由2个节点决议通过这个事务,事务才能够最终得以提交并响应。
5.根据权利要求3所述的一种金融级基于A10的高可用MySQL数据库实现方法,其特征在于,所述步骤三中MySQL数据库采用MGR技术,基于Paxos分布式协议,具体操作为一个复制组由若干个节点组成,组内各个节点维护各自的数据副本,基于Paxos分布式协议实现原子消息和全局有序消息。
6.根据权利要求1所述的一种金融级基于A10的高可用MySQL数据库实现方法,其特征在于,所述步骤四中A10设备连接真实服务器具体操作为A10设备定义若干个虚拟服务器,每个所述虚拟服务器包括一个IP地址和端口,所述虚拟服务器通过绑定真实服务器的IP地址和端口与不同的真实服务器绑定,所述A10设备定期检查服务群的服务的健康状况。
7.根据权利要求1所述的一种金融级基于A10的高可用MySQL数据库实现方法,其特征在于,所述真实服务器和虚拟服务器的工作原理为客户通过应用程序发送一个请求到虚拟服务器,所述虚拟服务器接收到请求后在真实服务器群中选择一个并将请求转发到该真实服务器。
8.根据权利要求1所述的一种金融级基于A10的高可用MySQL数据库实现方法,其特征在于,所述A10服务系统依照负载均衡算法将服务转向到正常工作的服务器上去。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911328588.2A CN111090637A (zh) | 2019-12-20 | 2019-12-20 | 一种金融级基于A10的高可用MySQL数据库实现方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911328588.2A CN111090637A (zh) | 2019-12-20 | 2019-12-20 | 一种金融级基于A10的高可用MySQL数据库实现方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111090637A true CN111090637A (zh) | 2020-05-01 |
Family
ID=70395252
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911328588.2A Pending CN111090637A (zh) | 2019-12-20 | 2019-12-20 | 一种金融级基于A10的高可用MySQL数据库实现方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111090637A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111708843A (zh) * | 2020-06-18 | 2020-09-25 | 辽宁振兴银行股份有限公司 | 一种基于MGR的跨数据中心MySQL多活实现方法 |
WO2022037359A1 (zh) * | 2020-08-18 | 2022-02-24 | 百果园技术(新加坡)有限公司 | 配置数据访问方法、装置、设备、配置中心及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102968310A (zh) * | 2012-12-05 | 2013-03-13 | 武汉烽火普天信息技术有限公司 | 一种一体化高性能应用软件架构及构建方法 |
CN104580502A (zh) * | 2015-01-26 | 2015-04-29 | 浪潮电子信息产业股份有限公司 | 一种实现负载均衡双机热备的方法 |
CN110198337A (zh) * | 2019-03-04 | 2019-09-03 | 腾讯科技(深圳)有限公司 | 网络负载均衡方法、装置、计算机可读介质及电子设备 |
CN110569307A (zh) * | 2019-09-09 | 2019-12-13 | 四川长虹电器股份有限公司 | 一种基于ProxySQL和MGR的MySQL读写分离方法 |
-
2019
- 2019-12-20 CN CN201911328588.2A patent/CN111090637A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102968310A (zh) * | 2012-12-05 | 2013-03-13 | 武汉烽火普天信息技术有限公司 | 一种一体化高性能应用软件架构及构建方法 |
CN104580502A (zh) * | 2015-01-26 | 2015-04-29 | 浪潮电子信息产业股份有限公司 | 一种实现负载均衡双机热备的方法 |
CN110198337A (zh) * | 2019-03-04 | 2019-09-03 | 腾讯科技(深圳)有限公司 | 网络负载均衡方法、装置、计算机可读介质及电子设备 |
CN110569307A (zh) * | 2019-09-09 | 2019-12-13 | 四川长虹电器股份有限公司 | 一种基于ProxySQL和MGR的MySQL读写分离方法 |
Non-Patent Citations (3)
Title |
---|
朱崇来;: "基于MySQL组复制技术数据备份策略实现" * |
王申申;刘彬;: "数据中心虚拟化灾备解决方案" * |
计算机与现代化: "高并发高可用零售O2O交易系统的架构设计与业务实现" * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111708843A (zh) * | 2020-06-18 | 2020-09-25 | 辽宁振兴银行股份有限公司 | 一种基于MGR的跨数据中心MySQL多活实现方法 |
WO2022037359A1 (zh) * | 2020-08-18 | 2022-02-24 | 百果园技术(新加坡)有限公司 | 配置数据访问方法、装置、设备、配置中心及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6421688B1 (en) | Method and apparatus for database fault tolerance with instant transaction replication using off-the-shelf database servers and low bandwidth networks | |
CA2543493C (en) | System and method for failover | |
CA2512312C (en) | Metadata based file switch and switched file system | |
US20140244578A1 (en) | Highly available main memory database system, operating method and uses thereof | |
CN109729129A (zh) | 存储集群的配置修改方法、存储集群及计算机系统 | |
US20070061379A1 (en) | Method and apparatus for sequencing transactions globally in a distributed database cluster | |
EP2643771B1 (en) | Real time database system | |
US20090049054A1 (en) | Method and apparatus for sequencing transactions globally in distributed database cluster | |
CN103457775B (zh) | 一种基于角色的高可用虚拟机池化管理系统 | |
CN105069160A (zh) | 一种基于自主可控数据库的高可用性方法及构架 | |
CN102467508A (zh) | 提供数据库服务的方法及数据库系统 | |
CN101853186A (zh) | 分布式事务恢复系统和方法 | |
CN105406980A (zh) | 一种多节点备份方法及装置 | |
CN110727709A (zh) | 一种集群数据库系统 | |
CN110175089A (zh) | 一种具有读写分离功能的双活灾备系统 | |
CN104660386A (zh) | 一种基于安腾平台下提高db2容灾高可用性的方法 | |
CN113821376B (zh) | 一种基于云灾备的一体化备份容灾方法及系统 | |
CN115794499B (zh) | 一种用于分布式块存储集群间双活复制数据的方法和系统 | |
CN111090637A (zh) | 一种金融级基于A10的高可用MySQL数据库实现方法 | |
CN115576655B (zh) | 容器数据保护系统、方法、装置、设备及可读存储介质 | |
CN111158949A (zh) | 容灾架构的配置方法、切换方法及装置、设备和存储介质 | |
CN113849136B (zh) | 一种基于国产平台的自动化fc块存储处理方法和系统 | |
CN105323271B (zh) | 一种云计算系统以及云计算系统的处理方法和装置 | |
CN103793296A (zh) | 一种在集群中用于辅助备份复制计算机系统的方法 | |
AU2019371362B2 (en) | Methods, devices and systems for non-disruptive upgrades to a distributed coordination engine in a distributed computing environment |
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: 20200501 |
|
RJ01 | Rejection of invention patent application after publication |