数码资讯
MySQL数据库高可用性方案综述
高可用性架构基本上是互联网服务的一个标准,它需要在应用服务的高可用性和数据库服务。虽然互联网服务7×24小时的不间断服务,但或多或少存在一些当服务不可用,如当网页打不开,百度找不到或没有微博、微信等。一般来说,高可用性的措施能在多大程度上服务一年内通过不可作为一个参考时间,必须达到3个9的可用性,一
选购提示
关注价格、性能、续航、售后和真实使用场景,理性比较后再下单。
高可用性架构基本上是互联网服务的一个标准,它需要在应用服务的高可用性和数据库服务。虽然互联网服务7×24小时的不间断服务,但或多或少存在一些当服务不可用,如当网页打不开,百度找不到或没有微博、微信等。一般来说,高可用性的措施能在多大程度上服务一年内通过不可作为一个参考时间,必须达到3个9的可用性,一年内只有8个小时的服务不可,但如果你想达到5 9的可用性,只需5分钟,一年内服务中断。所以尽管每个公司说他们的服务是7 * 24,但事实上,它可以做5, 9甚至更少。国内互联网巨头BAT(百度、阿里巴巴、腾讯)由于失败而存在停机的问题,对于一个系统来说,可能有很多模块,如前端应用程序、缓存、数据库、搜索、消息队列等。为了保证整个系统的高可用性,每个模块都需要高可用性,对于数据库服务来说,高可用性可以更复杂,可以用于用户服务,不仅用于访问,还可以确保正确性。因此,在讨论数据库的高可用性解决方案的同时,也要考虑程序的数据一致性。本文主要讨论MySQL数据库的高可用性方案,介绍了每个方案的特点和优缺点。这篇文章是对各种计划的总结,我希望能给你一些建议并与你讨论。
1。基于共享存储方案SAN
方案介绍:SAN(存储区域网),简单地说,它可以实现网络中不同服务器的数据共享,共享存储可以与数据库服务器和存储进行解耦,在共享存储时,服务器可以挂载文件系统,正常运行。如果服务器挂断,备用服务器可以挂载相同的文件系统,执行所需的恢复操作,然后启动MySQL:
优势:
1。可以避免存储以外的其他组件造成的数据丢失。
2。部署简单,切换逻辑简单,应用透明。
三.保证主要数据的强一致性。
局限或缺点:
1。共享存储是一个单点,如果共享存储被挂起,数据将丢失。
2。价格比价格贵。
2。基于磁盘的复制程序DRBD
方案介绍:DRBD(分布式复制块设备)是一个磁盘复制技术,可以实现san.dbrd类似的效果是一个块级同步复制技术在Linux内核模块的方式实现。它复制每一块主服务器到另一个服务器的块设备通过网络卡和记录在主设备提交block.drbd类似于圣,也有一个热备用机。当它开始提供服务,它将使用相同的数据为故障机,但DRBD的数据复制,不能共享。DRBD架构图如下:
优势uff1a
1。切换到应用程序透明性
2。保证主要数据的强一致性。
局限或缺点:
1。影响写入性能,因为每次写入磁盘时,它本质上需要同步到网络服务器。
2。一般配置两个节点同步,可伸缩性差。
三.图书馆不能提供阅读服务,浪费资源
三.基于主从复制(单点写入)方案
两方案之前讨论依赖于底层的共享存储磁盘复制技术解决了单点和磁盘的MySQL服务器的单点问题。在实际生产环境中,高可用性在很大程度上依赖于MySQL本身的复制,使一个或多个热备份复制大师,和交换服务的热备份时掌握失败。下面的程序是基于主从复制方案,这是越来越强大、从简单到复杂,实现难度由易到难。你可以根据实际情况选择合适的计划。
3.1简单 /心跳。
节目介绍:
简单的是HA软件。它的作用是检测服务器的状态(Web服务器、DB服务器等)。检测原理是模拟网络请求检测,包括http_get | ssl_get | tcp_check | smtp_check | misc_check等等。DB服务器,它主要是IP、端口(tcp_check),但这可能还不够(如数据库服务器的只读),所以简单也支持自定义脚本简单的验证服务器。通过听监测现状。如果一个服务器出现故障,故障服务器从系统中删除。简单的高可用性架构,如下图所示,简单的软件安装在主、从服务器分开,并配置相同的VIP。VIP层屏蔽的IP,和应用服务器获取数据库访问服务的VIP。当主人失败,简单的感知,提升奴隶的主人,继续向应用层提供服务的透明度。
优势uff1a
1。安装简单
当2。主故障,从站快速切换提供服务和透明的应用程序。
局限或缺点:
1。需要主的IP在同一网段内。
2。提供弱检测机制,需要自定义脚本来确定主控是否可以提供服务,如更新心跳表等。
3、数据的一致性没有保证。原始的MySQL是异步复制的。如果主控失败,则从属数据可能不是最新的,从而导致数据丢失。因此,在切换时必须考虑从属延迟因素,确定切换策略,对于强一致的要求,可以采用半同步半同步来减少数据丢失。
4.keepalived软件本身不能保证哈。
3.2.mha
项目介绍:MHA(主高可用性)是日本的一个MySQL丹尼尔用perl写的一个MySQL数据库故障转移方案,确保数据库的高可用性,存储的二进制日志从背面的主服务器宕机,MHA,能最大限度地减少数据loss.mha共分为两部分:MHA经理(管理节点)和MHA节点(数据节点)。MHA可以独立部署在不同的机器上管理多个主从集群。MHA节点运行在每一个MySQL服务器。它的主要作用是在切换处理的二进制日志,确保交接是possible.mha经理定期检测集群中的主节点数,当主人失败了,它可以自动将从最新的数据升级到新的主人,然后所有其他的奴隶以指向新的主人,故障转移方法对应用程序完全透明。MHA的架构如下:
MHA故障转移过程:
发现高手异常,进行一系列判断,最后确定师傅下来;
检查配置信息并列出当前体系结构中节点的状态。
C.处理失败的主人,VIP漂移,或关闭基于脚本的mysqld服务定义。
D.所有从比较网站,选择该点最近的奴隶,然后比较与掌握和获取binlog差异,复制到管理节点;
E.选择从候选节点的新主人和新主人将比较新的奴隶与网站获得relaylog差异。
F.管理节点以binlog差异拷贝到新主人,新主人的应用binlog差异和relaylog不同,最后得到的轨迹信息,并接受写请求(read_only = 0)。
G.其他奴隶与网站的新奴隶相比,得到了relaylog差异,复制到相应的奴隶;
H.管理节点复制binlog每个奴隶的差异,比较exec_master_log_pos和read_master_log_pos,得到不同的日志;
每一个奴隶将所有不同的日志,然后重置奴隶和重定向的新主人;
J.新主人重置奴隶清除奴隶信息。
优势uff1a
1。开源代码,方便两种业务场景的开发
2、当故障切换时,可以修复多个从机之间的差异日志,并最终保持所有从站数据一致。然后选择一个充当新的主并指向另一个奴隶。
三.您可以灵活地选择VIP方案或全局目录数据库方案(将主IP映射更改为交换机)。
缺点:
1。不保证强一致性,因为从故障主控器保存二进制日志并不总是可行的,例如坏主磁盘,或SSH身份验证失败。
2。支持一个主和多个从体系结构,要求副本集群必须至少有三个数据库服务器,一个主要的两个奴隶,一个用作主服务器,一个用作备用主服务器,另一个用作从属库。
3、当使用全局目录数据库时,我们需要在切换程序时应用感知变化,因此它对应用程序是不透明的,因此我们需要保持对应用程序透明的切换,并且仍然依赖于VIP。
4。不适合大规模集群部署,而且配置更为复杂。
该5.mha管理节点本身是没有保证的哈。
3.3的高可用性。基于ZooKeeper
节目介绍:
从前面的讨论中,我们可以看到,无论是简单的解决方案和MHA解决方案可以解决HA软件的高可用性问题,因为他本身是一个点。所以如果哈还介绍了多个副本吗然后,它带来了新的问题,如何保证1.ha软件2强之间的同步。如何保证不同时有多个HA交换操作,这两个问题本质上是分布式系统一致性问题。因此,分布式一致性协议类似Paxos筏可介绍的HA软件保证哈software.zookeeper的可用性是一个典型的发布/订阅模型的分布式数据管理和协调框架,通过数据节点类型丰富的管理员使用交叉,与观察者的事件通知机制,便于施工的核心功能,涉及到一系列的分布式应用程序,如数据发布/订阅、负载均衡、分布式协调 /通知。集群管理,掌握选举,分布式锁和分布式队列等。管理员是一个很大的话题,你可以从抛媚眼,获得更多的信息,我在这里讨论如何解决自身的可用性HA饲养员的问题。结构图如下:
HA客户端部署在图中的每一个MySQL的节点,这是用来报告本地节点的心跳状态实时,动物园管理员为例,主图书馆的崩溃,并通过修改基于ZooKeeper节点信息通知哈(以下简称ZK)。HA节点注册ZK监控事件。当该节点的变化,它会自动感觉哈,和HA节点可以部署一个或多个,主要灾害recovery.ha节点实现数据的一致性通过ZooKeeper服务。通过分布式锁,多个HA节点不能保证切换到主从节点在同一time.ha本身是无状态的,所有的MySQL节点的状态信息都存储在ZooKeeper服务器。在转换时,HA会检查MySQL节点和开关。让管理员出台后看交接流程:
a.ha客户端检测到主人的异常,一系列的判断,最后确定的主人;
b.ha客户端删除对ZK主节点信息;
由于侦听机制,HA会察觉一个节点被删除;
D.HA rechecks MySQL节点,如建立连接,更新心跳表,等等
当E.确认异常时,开关就发出了。
让我们看看这种架构是否能保证HA本身的高可用性。
(1)。如果HA客户端本身挂起,MySQL节点正常吗
哈客户管理MySQL节点不能与管理员保持心跳,ZK服务将删除节点,HA会觉察到这一变化,准备尝试切换,在切换之前,它将被复查。当mysql节点正常时,它不会切换。
(2)对the.mysql节点的性能和管理员的网络是什么
因为HA客户端和节点在同一个主机,HA客户端不能报告ZK再次心跳。ZK会删除相应的MySQL节点信息,HA会复查,仍不合格,则开关。
(3)哈挂了,它是怎么表现的
因为HA是无状态的,并且有多个副本,所以HA是挂起的,不会影响整个系统。
优势uff1a
1。保证了整个系统的高可用性。
2的强相合性。主从依赖于MySQL本身,如半同步,或周围工具的补充策略,类似MHA。
三.扩展性非常好,可以管理大规模的集群。
缺点:
1。ZK介绍,整个系统变得复杂。
4。基于集群(多点写入)方案
讨论的第三个部分,基本上是当前市场的主流,这是由一个单一的点。虽然我们可以用中间件来段(分片),我们仍然只允许一个节点对同一数据写。从这个角度来看,上述方案是伪分布式。两方案讨论下面是真正的分布式,可写在多个节点在同一个数据从理论上讲,这是类似于Oracle RAC,EMC的Greenplum分布式数据库,MySQL的领域,主要有2种解决方案:加莱拉基药和NDB cluster.mysql集群实现基于很多局限NDB存储引擎,而药是基于InnoDB引擎,但它有它的局限性,但由于InnoDB应用广泛,具有一定的参考价值。据我所知,公司在生产环境中使用PXC方案。PXC结构图(Percona XtraDB Cluster)是如下:
优势uff1a
1。准同步复制
超过2。可以同时读取和写入节点,可以实现写扩展,比切片方案更进一步。
三.自动节点管理
4。数据是严格一致的。
5。服务非常可用
缺点:
1。支持InnoDB引擎
2。所有表都有主键。
三.由于写入与其他节点同步,所以存在写扩展问题。
4。非常依赖于网络的稳定性,不适合远程同步。
5。基于中间件代理的方案
准确地说,中间件是不是高可用性尤其相关,因为开关是在数据库级别进行,但中间层的引入使得应用更加透明。之前介绍的中间件,所有的方案基本上都是依赖于VIP漂移机制或不依赖VIP并不能保证该应用程序的透明度,透明度和高可用性应用可以实现同时加入中间件层。此外,中间层也可以做切分,容易写的扩展。代理有很多的解决方案,如MySQL的MySQL Proxy和织物、阿里巴巴科巴和时间区分数据传输线路,等等。我们以织物为例,与组成框架的内容如下:
应用程序要求的织物连接,然后接入节点通过XML-RPC协议的织物。织物节点依靠备用存储(后备存储),存储整个HA集群的元数据信息,连接器读取后备存储的信息,然后将元数据缓存到缓存。这种方法的优点是减少每次建立连接时与管理节点交互的成本。每个HA组都有主和多个次级(从)。当主节点不正常时,最合适的节点将从辅助节点选择,以便升级到新的主节点,其余节点将重新定向到新的节点。这些都是自动操作,不知道业务。在HA交换机之后,需要通知连接器的元数据信息。
优势uff1a
1。切换到应用程序透明性
2。扩展性,便于切片扩展
三.可以部署到整个机房
缺点:
1。是一个相对较新的组件,并没有很多实际的应用场景。
2。不解决强一致性问题,强一致性依赖于MySQL自身(半同步)和回滚和补充机制。
总结
以上介绍了几种典型的高可用性架构MySQL,包括共享存储方案,磁盘复制方案和主从复制方案。对于主从复制方案,简单,MHA,并介绍了动物园管理员介绍。每一个方案,这是始终可用的,强大的数据的一致性,和切换解释应用程序的透明度就我个人而言,基于MySQL的复制方案是主流和成熟。引入中间件和引入管理员可以使系统可用性更好,支持更大的规模,但也把研发和运行维护提出了更高的要求。因此,在选择方案的选择是基于业务场景和操作维护的规模。
1。基于共享存储方案SAN
方案介绍:SAN(存储区域网),简单地说,它可以实现网络中不同服务器的数据共享,共享存储可以与数据库服务器和存储进行解耦,在共享存储时,服务器可以挂载文件系统,正常运行。如果服务器挂断,备用服务器可以挂载相同的文件系统,执行所需的恢复操作,然后启动MySQL:
优势:
1。可以避免存储以外的其他组件造成的数据丢失。
2。部署简单,切换逻辑简单,应用透明。
三.保证主要数据的强一致性。
局限或缺点:
1。共享存储是一个单点,如果共享存储被挂起,数据将丢失。
2。价格比价格贵。
2。基于磁盘的复制程序DRBD
方案介绍:DRBD(分布式复制块设备)是一个磁盘复制技术,可以实现san.dbrd类似的效果是一个块级同步复制技术在Linux内核模块的方式实现。它复制每一块主服务器到另一个服务器的块设备通过网络卡和记录在主设备提交block.drbd类似于圣,也有一个热备用机。当它开始提供服务,它将使用相同的数据为故障机,但DRBD的数据复制,不能共享。DRBD架构图如下:
优势uff1a
1。切换到应用程序透明性
2。保证主要数据的强一致性。
局限或缺点:
1。影响写入性能,因为每次写入磁盘时,它本质上需要同步到网络服务器。
2。一般配置两个节点同步,可伸缩性差。
三.图书馆不能提供阅读服务,浪费资源
三.基于主从复制(单点写入)方案
两方案之前讨论依赖于底层的共享存储磁盘复制技术解决了单点和磁盘的MySQL服务器的单点问题。在实际生产环境中,高可用性在很大程度上依赖于MySQL本身的复制,使一个或多个热备份复制大师,和交换服务的热备份时掌握失败。下面的程序是基于主从复制方案,这是越来越强大、从简单到复杂,实现难度由易到难。你可以根据实际情况选择合适的计划。
3.1简单 /心跳。
节目介绍:
简单的是HA软件。它的作用是检测服务器的状态(Web服务器、DB服务器等)。检测原理是模拟网络请求检测,包括http_get | ssl_get | tcp_check | smtp_check | misc_check等等。DB服务器,它主要是IP、端口(tcp_check),但这可能还不够(如数据库服务器的只读),所以简单也支持自定义脚本简单的验证服务器。通过听监测现状。如果一个服务器出现故障,故障服务器从系统中删除。简单的高可用性架构,如下图所示,简单的软件安装在主、从服务器分开,并配置相同的VIP。VIP层屏蔽的IP,和应用服务器获取数据库访问服务的VIP。当主人失败,简单的感知,提升奴隶的主人,继续向应用层提供服务的透明度。
优势uff1a
1。安装简单
当2。主故障,从站快速切换提供服务和透明的应用程序。
局限或缺点:
1。需要主的IP在同一网段内。
2。提供弱检测机制,需要自定义脚本来确定主控是否可以提供服务,如更新心跳表等。
3、数据的一致性没有保证。原始的MySQL是异步复制的。如果主控失败,则从属数据可能不是最新的,从而导致数据丢失。因此,在切换时必须考虑从属延迟因素,确定切换策略,对于强一致的要求,可以采用半同步半同步来减少数据丢失。
4.keepalived软件本身不能保证哈。
3.2.mha
项目介绍:MHA(主高可用性)是日本的一个MySQL丹尼尔用perl写的一个MySQL数据库故障转移方案,确保数据库的高可用性,存储的二进制日志从背面的主服务器宕机,MHA,能最大限度地减少数据loss.mha共分为两部分:MHA经理(管理节点)和MHA节点(数据节点)。MHA可以独立部署在不同的机器上管理多个主从集群。MHA节点运行在每一个MySQL服务器。它的主要作用是在切换处理的二进制日志,确保交接是possible.mha经理定期检测集群中的主节点数,当主人失败了,它可以自动将从最新的数据升级到新的主人,然后所有其他的奴隶以指向新的主人,故障转移方法对应用程序完全透明。MHA的架构如下:
MHA故障转移过程:
发现高手异常,进行一系列判断,最后确定师傅下来;
检查配置信息并列出当前体系结构中节点的状态。
C.处理失败的主人,VIP漂移,或关闭基于脚本的mysqld服务定义。
D.所有从比较网站,选择该点最近的奴隶,然后比较与掌握和获取binlog差异,复制到管理节点;
E.选择从候选节点的新主人和新主人将比较新的奴隶与网站获得relaylog差异。
F.管理节点以binlog差异拷贝到新主人,新主人的应用binlog差异和relaylog不同,最后得到的轨迹信息,并接受写请求(read_only = 0)。
G.其他奴隶与网站的新奴隶相比,得到了relaylog差异,复制到相应的奴隶;
H.管理节点复制binlog每个奴隶的差异,比较exec_master_log_pos和read_master_log_pos,得到不同的日志;
每一个奴隶将所有不同的日志,然后重置奴隶和重定向的新主人;
J.新主人重置奴隶清除奴隶信息。
优势uff1a
1。开源代码,方便两种业务场景的开发
2、当故障切换时,可以修复多个从机之间的差异日志,并最终保持所有从站数据一致。然后选择一个充当新的主并指向另一个奴隶。
三.您可以灵活地选择VIP方案或全局目录数据库方案(将主IP映射更改为交换机)。
缺点:
1。不保证强一致性,因为从故障主控器保存二进制日志并不总是可行的,例如坏主磁盘,或SSH身份验证失败。
2。支持一个主和多个从体系结构,要求副本集群必须至少有三个数据库服务器,一个主要的两个奴隶,一个用作主服务器,一个用作备用主服务器,另一个用作从属库。
3、当使用全局目录数据库时,我们需要在切换程序时应用感知变化,因此它对应用程序是不透明的,因此我们需要保持对应用程序透明的切换,并且仍然依赖于VIP。
4。不适合大规模集群部署,而且配置更为复杂。
该5.mha管理节点本身是没有保证的哈。
3.3的高可用性。基于ZooKeeper
节目介绍:
从前面的讨论中,我们可以看到,无论是简单的解决方案和MHA解决方案可以解决HA软件的高可用性问题,因为他本身是一个点。所以如果哈还介绍了多个副本吗然后,它带来了新的问题,如何保证1.ha软件2强之间的同步。如何保证不同时有多个HA交换操作,这两个问题本质上是分布式系统一致性问题。因此,分布式一致性协议类似Paxos筏可介绍的HA软件保证哈software.zookeeper的可用性是一个典型的发布/订阅模型的分布式数据管理和协调框架,通过数据节点类型丰富的管理员使用交叉,与观察者的事件通知机制,便于施工的核心功能,涉及到一系列的分布式应用程序,如数据发布/订阅、负载均衡、分布式协调 /通知。集群管理,掌握选举,分布式锁和分布式队列等。管理员是一个很大的话题,你可以从抛媚眼,获得更多的信息,我在这里讨论如何解决自身的可用性HA饲养员的问题。结构图如下:
HA客户端部署在图中的每一个MySQL的节点,这是用来报告本地节点的心跳状态实时,动物园管理员为例,主图书馆的崩溃,并通过修改基于ZooKeeper节点信息通知哈(以下简称ZK)。HA节点注册ZK监控事件。当该节点的变化,它会自动感觉哈,和HA节点可以部署一个或多个,主要灾害recovery.ha节点实现数据的一致性通过ZooKeeper服务。通过分布式锁,多个HA节点不能保证切换到主从节点在同一time.ha本身是无状态的,所有的MySQL节点的状态信息都存储在ZooKeeper服务器。在转换时,HA会检查MySQL节点和开关。让管理员出台后看交接流程:
a.ha客户端检测到主人的异常,一系列的判断,最后确定的主人;
b.ha客户端删除对ZK主节点信息;
由于侦听机制,HA会察觉一个节点被删除;
D.HA rechecks MySQL节点,如建立连接,更新心跳表,等等
当E.确认异常时,开关就发出了。
让我们看看这种架构是否能保证HA本身的高可用性。
(1)。如果HA客户端本身挂起,MySQL节点正常吗
哈客户管理MySQL节点不能与管理员保持心跳,ZK服务将删除节点,HA会觉察到这一变化,准备尝试切换,在切换之前,它将被复查。当mysql节点正常时,它不会切换。
(2)对the.mysql节点的性能和管理员的网络是什么
因为HA客户端和节点在同一个主机,HA客户端不能报告ZK再次心跳。ZK会删除相应的MySQL节点信息,HA会复查,仍不合格,则开关。
(3)哈挂了,它是怎么表现的
因为HA是无状态的,并且有多个副本,所以HA是挂起的,不会影响整个系统。
优势uff1a
1。保证了整个系统的高可用性。
2的强相合性。主从依赖于MySQL本身,如半同步,或周围工具的补充策略,类似MHA。
三.扩展性非常好,可以管理大规模的集群。
缺点:
1。ZK介绍,整个系统变得复杂。
4。基于集群(多点写入)方案
讨论的第三个部分,基本上是当前市场的主流,这是由一个单一的点。虽然我们可以用中间件来段(分片),我们仍然只允许一个节点对同一数据写。从这个角度来看,上述方案是伪分布式。两方案讨论下面是真正的分布式,可写在多个节点在同一个数据从理论上讲,这是类似于Oracle RAC,EMC的Greenplum分布式数据库,MySQL的领域,主要有2种解决方案:加莱拉基药和NDB cluster.mysql集群实现基于很多局限NDB存储引擎,而药是基于InnoDB引擎,但它有它的局限性,但由于InnoDB应用广泛,具有一定的参考价值。据我所知,公司在生产环境中使用PXC方案。PXC结构图(Percona XtraDB Cluster)是如下:
优势uff1a
1。准同步复制
超过2。可以同时读取和写入节点,可以实现写扩展,比切片方案更进一步。
三.自动节点管理
4。数据是严格一致的。
5。服务非常可用
缺点:
1。支持InnoDB引擎
2。所有表都有主键。
三.由于写入与其他节点同步,所以存在写扩展问题。
4。非常依赖于网络的稳定性,不适合远程同步。
5。基于中间件代理的方案
准确地说,中间件是不是高可用性尤其相关,因为开关是在数据库级别进行,但中间层的引入使得应用更加透明。之前介绍的中间件,所有的方案基本上都是依赖于VIP漂移机制或不依赖VIP并不能保证该应用程序的透明度,透明度和高可用性应用可以实现同时加入中间件层。此外,中间层也可以做切分,容易写的扩展。代理有很多的解决方案,如MySQL的MySQL Proxy和织物、阿里巴巴科巴和时间区分数据传输线路,等等。我们以织物为例,与组成框架的内容如下:
应用程序要求的织物连接,然后接入节点通过XML-RPC协议的织物。织物节点依靠备用存储(后备存储),存储整个HA集群的元数据信息,连接器读取后备存储的信息,然后将元数据缓存到缓存。这种方法的优点是减少每次建立连接时与管理节点交互的成本。每个HA组都有主和多个次级(从)。当主节点不正常时,最合适的节点将从辅助节点选择,以便升级到新的主节点,其余节点将重新定向到新的节点。这些都是自动操作,不知道业务。在HA交换机之后,需要通知连接器的元数据信息。
优势uff1a
1。切换到应用程序透明性
2。扩展性,便于切片扩展
三.可以部署到整个机房
缺点:
1。是一个相对较新的组件,并没有很多实际的应用场景。
2。不解决强一致性问题,强一致性依赖于MySQL自身(半同步)和回滚和补充机制。
总结
以上介绍了几种典型的高可用性架构MySQL,包括共享存储方案,磁盘复制方案和主从复制方案。对于主从复制方案,简单,MHA,并介绍了动物园管理员介绍。每一个方案,这是始终可用的,强大的数据的一致性,和切换解释应用程序的透明度就我个人而言,基于MySQL的复制方案是主流和成熟。引入中间件和引入管理员可以使系统可用性更好,支持更大的规模,但也把研发和运行维护提出了更高的要求。因此,在选择方案的选择是基于业务场景和操作维护的规模。
声明:本文内容用于数码产品信息整理与选购参考,具体价格、库存、售后政策以官方渠道和电商页面实时信息为准。