MySQL实战宝典 高可用架构篇 17 高可用设计三大高可用设计架构方案

限时加码!20+主流AI编程工具免费用 购周边加赠Coding Plan Lite,Claude Code、Cursor等即刻畅享,学习进阶更高效! 阅读详情

前面学习了MySQL数据库的复制、优化,以及基于复制技术实现业务层的读写分离方案,这些内容是为了铺垫MySQL数据库的高可用架构设计。因为复制是高可用的基础,但只用复制同步数据远远不够,还要结合自己的业务进行高可用设计。

同时,高可用也不仅仅是数据库的事,你要从业务的全流程出发,思考怎么设计一个真正健壮的高可用架构。

高可用概念(High Availability)

首先,我们来看一下wiki上对高可用的定义:

High availability (HA) is a characteristic of a system which aims toensure an agreed
level of operational performance, usually uptime, for a higher than normal period.

从上面的描述来看,高可用是系统能提供无故障服务的一种能力。简单地说就是避免服务器宕机而造成服务不可用。

我们都知道,高可用是每个业务系统设计时,开发人员必须考虑的关键点。比如你的系统在发生不可用时,业务表现如何?用户能否容忍你的不可用时长?

而业界度量高可用能力也有统一标准:判断宕机时间,并以此计算出每年系统可用时间达到几个9,来判断高可用架构是否健壮。具体如下表:

通常来说,系统至少要达到4个9(99.99%),也就是每年宕机时间不超过52.56分钟,否则用户体验会非常差,感觉系统不稳定。

不过4个9宕机52分钟对于生产环境的影响还是比较大,但是5个9对大部分系统来说要求又太高。所以一些云服务商会提出一个99.995%的可用性概念,那么系统一年的不可用时长为26.28分钟。

高可用架构设计

系统要达到高可用,一定要做好软硬件的冗余,消除单点故障(SP

mysql高可用架构设计 数据库中的数据在主库完成更新后,是异步同步到每个从库上的,这个过程有一个微小的时间差,这个时间差叫主从同步延迟。正常情况下,主从延迟非常小,不超过 1ms。但即使这个非常小的延迟,也会导致在某一个时刻,主库和从库上的数据是不一致的。应用程序需要能接受并克服这种主从不一致的情况,否则就会引发一些由于主从延迟导致的数据错误。主备切换可能是一个主动运维动作,比如软件升级、主库所在机器按计划下线等,也可能是被动操作,比如主库所在机器掉电。接下来,我们先一起看看主动切换的场景。 阅读详情

相关推荐

老生常谈:MySQL高可用架构

MGR集群是由所有的MySQL Server共同组成的,每个Server都有完整的副本数据,副本之间基于Row格式的日志和GTID来做副本之前的数据同步,采用Paxos算法实现数据的一致性保障。基于MySQL主从同步数据越来越完善,效率越来越高,也就引出了第一种MySQL高可用架构: 基于MySQL自身的主从同步方案,常用的一种部署架构是: 用户通过VIP访问Master和Slave节点,每个节点采用keepalved探索。当然MySQL节点之间的数据同步还要依赖MySQL自身的数据同步方式。

代码界的扛把子 517

分布式数据库架构高可用、高性能的数据存储

在现代信息时代,数据是企业发展的核心。为了支持海量数据的存储、高并发访问以及保证数据的可靠性,分布式数据库架构应运而生。分布式数据库架构是一种将数据存储在多个物理节点上,并通过一系列复杂的协调和管理机制来提供高可用性和高性能的数据存储方案。它不仅解决了传统单机数据库的瓶颈问题,还保证了数据的安全和可靠性。

xuxian的博客 981

MySQL 中常见的高可用架构部署方案

主从复制是MySQL中最基本的高可用架构之一,通过将一个MySQL实例(主库)的数据复制到一个或多个MySQL实例(从库),实现数据的冗余备份和读写分离。主主复制是主从复制的扩展,两个MySQL实例互为主从,实现双向复制,提高系统的可用性和负载均衡能力。Galera Cluster是一种多主复制的集群方案,通过同步复制实现数据一致性和高可用性。MySQL Group Replication是MySQL官方提供的多主复制集群方案,通过Paxos协议实现数据一致性和高可用性。

My_wife_QBL的博客 3565

2024了还有人不知道MySQL高可用三大架构???

什么是高可用高可用高可用是系统所能提供无故障服务的一种能力。一般来说,系统至少要达到 4 个 9999,否则用户体验会非常差。4 个 9 对于生产环境影响还比较大,5 个 9 的要求又太高,于是一些云服务厂商提出来 99.995%高可用是系统所能提供无故障服务的一种能力,度量单位是几个 9;线上系统高可用目标应不低于 99.995%,否则系统频繁宕机,用户体验不好;高可用实现基础是:冗余 + 故障转移;无状态服务的高可用设计较为简单,直接故障转移或剔除就行;

X2512261315的博客 3040

Mysql高可用架构方案

主从模式是最基本的Mysql高可用架构,一台服务器作为Master节点,若干服务器作为Slave节点。只有Master处理写数据请求,读请求可仅由Slave节点处理,也可让Master、Slave同时处理。Master和Slave通过主从复制技术保持数据一致,即Master节点将数据同步给Slave节点。主从模式具备高可用的基础是主从复制技术。以主从模式为基础,接下来就该考虑如下问题了:如何检测节点故障master节点故障之后如何重新选举。

dsgdauigfs的博客 1285

深入剖析MySQL数据库的九种高可用架构方案和三种数据可靠性保障方案

本文系统介绍了MySQL数据库的9种高可用和数据可靠性方案,包括6种支持自动故障转移的高可用架构(MMM、MHA、MGR、MySQL Cluster、Galera、PXC)和3种数据可靠性保障方案(RAID10、SAN、DRBD)。每种方案都详细分析了其核心原理、优势、缺点和适用场景,并提供了综合对比表格。文章强调技术选型需综合考虑业务需求、预算和团队能力,建议新项目首选MGR,老系统可考虑MHA或PXC,金融系统推荐RAID10,企业级场景适合SAN,而中小型容灾系统可选择DRBD。

qq_46371374的博客 2075

mysql高可用架构

一直处于Slave_IO_Running: Connecting,报错Last_IO_Error: error connecting to master 'myslave@172.17.0.2:3306' - retry-time: 60 retries: 7 message: Authentication plugin 'caching_sha2_password' reported error: Authentication requires secure connection.

qq_36258078的博客 1924

MySQL集群高可用架构

MySQL MGR高可用架构摘要 MySQL组复制(MGR)是官方推出的高可用集群方案,首次集成于5.7.17版本。它支持单主和多主两种模式,通过GCS协议实现故障检测、成员管理和安全消息传递。MGR的核心优势包括事务一致性协调机制和内置脑裂保护功能,确保数据强一致性。

2402_83438398的博客 1000

基于MHA的MYSQL高可用架构搭建(大神

实验环境: 主:server1:172.25.38.1 从:server2:172.25.38.2 从:server3:172.25.38.3 在主端server1: [root@server1 ~]# /etc/init.d/mysqld stop Stopping mysqld: OK [root@serv...

Logbook的博客 4630

干货来袭!Alibaba全新MySQL性能调优与架构设计文档牛客网已封神

三个工作日收到了offer,头条面试体验还是很棒的,这次的头条面试好像每面技术都问了我算法,然后就是中间件、MySQL、Redis、Kafka、网络等等。第一个是算法关于算法,我觉得最好的是刷题,作死的刷的,多做多练习,加上自己的理解,还是比较容易拿下的。而且,我貌似是将《算法刷题LeetCode中文版》、《算法的乐趣》大概都过了一遍,尤其是这本。

2401_83916326的博客 1121

全网推荐的《MySQL性能调优与架构设计》笔记,MySQL性能调优入门看这就够了

作为最为流行的开源数据库软件之一,MySQL 数据库软件已经是广为人知了,同时项目中几乎无处不在,面试时又100%会问到的技术点,非MySQL莫属了。因此在这里给大家准备了这MySQL性能调优与架构设计》学习笔记。

weixin_51702416的博客 2万+

Mysql8.0高可用集群架构实战

InnoDB ReplicaSet 是 MySQL InnoDB 提供的一种高可用架构,基于 Group Replication(组复制) 技术实现,旨在通过多个节点之间的数据复制和故障转移,提升数据库的可靠性、扩展性和容错能力。主节点宕机,mysql会自动将其中一个从节点升级为主节点,由于我们group_replication_start_on_boot = OFF,所以主节点恢复以后需要手动重新加入组,也就是执行。主节点宕机,mysql会自动将其中一个从节点升级为主节点,停掉组复制(所有节点)

weixin_58611042的博客 1127

mysql ha架构,MySQL 高可用架构

Mysql 高可用架构(基于A/B复制)Client 192.168.5.13/24Mha_manager 192.168.5.15/24Mysql_A1 192.168.5.17/24Mysql_A2192.168.5.18/24Haproxy 192.168.5.16/24Mysql_B1 192.168.5.19/24Mysql_B2192.168.5.20/24...

weixin_36108931的博客 748

MySQL InnoDB Cluster高可用集群架构设计及核心原理设计

胡弦,视频号2023年度优秀创作者,互联网大厂P8技术专家,Spring Cloud Alibaba微服务架构实战派(上下册)和RocketMQ消息中间件实战派(上下册)的作者,资深架构师,技术负责人,极客时间训练营讲师,四维口袋KVP最具价值技术专家,技术领域专家团成员,2021电子工业出版社年度优秀作者,获得2023电子工业出版技术成长领路人称号,荣获2024年电子工业出版社博文视点20周年荣誉专家称号。

huxian1234的专栏 1204

mysql性能调优 高可用_MySQL性能调优与架构设计——第 17高可用设计之思路及方案...

17高可用设计之思路及方案前言:数据库系统是一个应用系统的核心部分,要想系统整体可用性得到保证,数据库系统就不能出现任何问题。对于一个企业级的系统来说,数据库系统的可用性尤为重要。数据库系统一旦出现问题无法提供服务,所有系统都可能无法继续工作,而不像软件中部分系统出现问题可能影响的仅仅只是某个功能无法继续服务。所以,一个成功的数据库架构高可用设计方面也是需要充分考虑的。本章内容将针对如...

weixin_39614322的博客 189

MySQL 双主复制+keepalived高可用架构

mysql双主互备加上keepalived,在其中一台机器上绑定虚拟IP(vip)。利用VIP统一对外服务有,可以避免在两个节点同时写数据造成冲突。同时,当keepalived主节点发生故障时,利用keepalived自带的服务监控功能和自定义脚本实现mysql故障自动切换,并将vip切换到备节点,实现高可用mysql双主复制+keepalived架构是一种简单、便捷高可用方案,使用于各种业务。

m0_72093175的博客 1320

PowerDNS高可用架构设计MySQL主从同步实战

本文详细阐述了PowerDNS高可用架构设计与实现,通过结合MySQL主从同步确保数据可靠性。文章从单点故障痛点出发,逐步解析了包含PowerDNS权威服务器、递归解析器、Nginx负载均衡及Keepalived虚拟IP在内的完整高可用架构设计,并提供了从MySQL配置、PowerDNS部署到接入层搭建的详细实战步骤,为企业构建稳定、高效的DNS基础设施提供了完整解决方案。

weixin_29214691的博客 417
上一篇: 有哪些好用的低代码开发平台?
下一篇: 从面试官甄别项目经验的角度,说说如何在简历中写项目经验(java后端方向)
java领域
博客等级 码龄4年 300粉丝 362原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值