暂无图片
暂无图片
暂无图片
暂无图片
暂无图片
1.高可用概述.docx
21
13页
0次
2025-03-29
10墨值下载
高可用概念
高可用是一种面向风险的设计,使系统具备控制风险,提高可用性的能力。
在生产系统中, 通常需要高可用方案来保证系统的不间断运行。
高可用是在主服务器发生故障时备用服务器可以快速接管,为了实现高可用,数据库系统应具
有冗余功能,用以防止单点故障,可靠的切换机制以及主动监视功能用以检测可能发生的任何
故障。
高可用定义
1. 狭义定义– 确保当出现软件、硬件、网络、系统或人为故障时,数据库不受影响,或
数据库可以在很短时间内恢复并提供服务。
2. 广义定义– 不局限于数据库的故障处理,涵盖数据库的各个方面,小到数据库日常维
护对系统可用性的影响,大到数据库的迁移和升级。 甚至扩展到应用程序、硬件、存
储和网络的层次。
高可用架构设计
系统不中断地执行其功能的能力,代表系统的可用性程度,是进行系统设计的准则之一。不中
断需要要通过“冗余”来是实现,如果只有一个服务,会出现单点故障的问题。
数据库的高可用架构能够在发生宕机或意外中断等故障时起到重要的作用,减小了业务因故障
中断受到的影响。高可用的方案大都是通过数据冗余的方式来实现的,即将数据复制到多个存
储设备以实现高可用。
目前 MySQL 数据库常用的高可用架构方案包括主从复制、MGRInnoDB
ClusterGelrea ClusterMHA 等。
MySQL Replication
MySQL Replication 是官方提供的主从同步方案,用于将一个 MySQL 的实例同步到另一个
实例中,是目前运用最广的 MySQL 容灾方案。Replication 用两个或以上的实例搭建了
MySQL 主从复制集群,提供单点写入,多点读取的服务,实现了读的横向扩展。
上面的例子,一个主库,三个从库,通过 replication,主库生成 binlog,然后发给从库,从
库写入 relaylog,然后将其提交到自身数据库中,实现主从数据同步。
对于数据库之上的业务层来说,基于 MySQL 的主从复制集群,单点写入主库 ,在数据同步
到从库后,查询可以从任何一个从库读取数据,以读写分离的方式,大大降低主库的运行负载,
同时提升了从库的资源利用。
优点:
1. 通过读写分离实现横向扩展的能力,写入和更新操作在主库上进行,从库中进行数据
的读取操作,通过增加从库的个数,能够极大的增强数据库的读取能力;
2. 数据安全,因为副本可以暂停复制过程,所以可以在副本上运行备份服务而不会破坏
相应的源数据;
3. 方便进行数据分析,可以在主库中创建实时数据,数据的分析操作在从库中进行,不
会影响到源数据库的性能;
缺点:
1. 不过 MySQL Replication 有个严重的缺点是主从同步延迟
Semi-Sync 同步复制
MySQL 有三种同步式,分是:
1. 步复制:MySQL 默认的复制是步的,主库在执行完客户端提交的务后会
即将返回客户端,并不关心从库是否已经处理。存在问题是,如果
主库的日志没有及时同步到从库,然后主库宕机了,执行故障移,在从库中
主,可能会存在出的主库中数据不完整
2. 全同步复制:当主库执行一个务,并等到所有从库执行务的时
,主库在提交务,并且返回数据给客户端。因为要等所有从库都同步到主库中
的数据才返回数据,所以能够保证主从数据的一性,是数据库的性能然受到影
响;
3. 同步复制:是于全同步和全步同步的一种,主库至需要等一个从库接
写入到 Relay Log 件即可,主库不需要等所有从库给主库返回 ACK。主库
ACK 标识这成,返回数据给客户端
MySQL 默认的复制是步的,所以主库和从库的同步会存在一定的延迟,更重要的是
复制可能起数据的丢失。全同步复制的性能又太差了,所以从 MySQL 5.5 开始
MySQL 件的支持 semi-sync 同步复制。
MHA
MHAMaster High Availability Manager and Tools for MySQL是一的作为
MySQL 高可用性环境下故障切换和主从提升的高可用软件。
专门用于监控主库的状态,当发现 master 点故障的时,会自动提升其中有最
新数据的 slave 点成为新的 master 点,在此期间,MHA 会通过其外的
信息避免数据一性问题。MHA 提供了 master 点的在线切换功能,即需切换
master-slave 点。MHA 能够在 30 内实现故障切换,并能在故障切换过程中,最大程度
的保证数据一性。
MHA 成:MHA Manager管理 MHA Node数据
1. MHA Manager:可以单独部署在一台独立的机器上管理多个 master-slave 集群,
可以部署在一 slave 点上。
2. MHA Node:运行在每台 MySQL 服务器上。
MHA Manager 会定时测集群中的 master 点,当 master 出现故障时,可以自动将最
新数据的 slave 提升为新的 master,然后将所有其slave 重新向新的 master个故
移过程对应用程序透明
MHA 优缺点:
优点:
1、可以支持基于 GTID 的复制式;
2MHA 在进行故障移时更不产生数据丢失
3、同一个监控点可以监控多个集群。
缺点:
1、需要本或利用三方具来实现 VIP 配置
2MHA 动后只会对主数据库进行监控;
3、需要基于 SSH 免认配置,存在一定的安全隐患
MMM
MMMMaster-Master replication manager for MySQL是一套支持双主故障切换和
日常管理的本程序。MMM 使用 Perl 语言开发,主要用来监控和管理 MySQL Master-
Master(双复制,可以说是 MySQL 主主复制管理器。
式,业务上同一时只能一个主库进行数据的写入。另一个备用主库,会在主服务器
of 13
10墨值下载
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文档的来源(墨天轮),文档链接,文档作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。