news 2026/8/2 3:42:27

Linux基础学习(9)Lamp架构(3)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Linux基础学习(9)Lamp架构(3)

MySQL组复制

基础定义:

MGR 是 MySQL 官方原生高可用集群方案,MySQL5.7.17 正式推出,8.0 持续增强;以插件 group_replication.so 运行,基于Paxos 分布式共识协议。

目标:解决传统主从复制异步丢数据、故障转移依赖外部工具 (MHA)、存在脑裂风险等痛点。

架构特点:

无共享存储(Shared-Nothing),集群每个实例保存完整副本。

对比项

传统主从(异步 / 半同步)

MGR 组复制

一致性

最终一致,极端场景丢数据

多数派确认,强一致,防脑裂

故障转移

需要 MHA/Keepalived 等第三方工具

内置自动选主,原生自愈

写入模型

只能单主写入

单主 (推荐)/ 多主两种模式

冲突处理

无冲突检测,容易主从不一致

内置 write set 冲突检测

节点规模

一主多从,无投票机制

推荐 3/5 奇数节点,依赖多数派

运维复杂度

较高,网络稳定性要求严格

运行模式:

1)单主模式 group_replication_single_primary_mode=ON

集群自动选举唯一 Primary 主节点,只允许主节点写入;其余节点自动设为只读

主宕机 → 集群自动投票选出新主,自动故障转移,无需人工干预

几乎无事务冲突,运维简单,绝大多数业务使用

2)多主模式 group_replication_single_primary_mode=OFF

所有节点都可以接收写请求

并发修改同一行数据会触发事务冲突回滚;业务必须适配冲突重试逻辑

适合多地域分布式写入场景

核心工作原理:

1.事务广播

节点执行 RW 事务,准备提交前,把写入集合 (write set)广播到集群所有成员。

只读事务无需广播、直接提交。

2.多数派确认(Quorum 核心!)

事务必须获得集群半数以上节点 ACK 确认,才能允许提交。

容错公式:集群节点数量建议奇数(3、5 节点)

节点集群:最多容忍 1 台故障;5 节点最多容忍 2 台故障

如果故障节点超过半数 → 无法达成共识,集群全部只读,防止脑裂。

3.冲突认证机制

所有节点收到事务广播后对比 write set;

无冲突:事务应用执行

存在行冲突:后发起的事务直接回滚

4.成员视图自动管理

内置故障检测,节点掉线、宕机、新节点加入,集群自动更新成员视图

流程:多主模式

首先对server1server2server3的mysql数据库进行初始化

Server1:

停止mysql服务清理数据然后进入启动文件

进入mysql修改密码并添加更改属性

退出MySQL数据库然后再次更改主配置文件并进入mysql添加命令

可以查看本组的工作状态,显示server1 online

Server2:

清除之前的数据并更改配置文件

在对server2的mysql进行初始化

再次修改配置文件

对mysql添加命令

可以查看本组的工作状态,显示server1 online server2 online

Server3:

类似server2 只是改id=3 修改本机地址

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/2 3:40:14

从源码编译到生产部署:Nginx在Linux服务器上的深度安装与配置指南

1. 项目概述:为什么Nginx是Linux服务部署的基石在Linux服务器上部署Web应用,第一步往往不是写代码,而是搭建一个可靠、高效的Web服务器。Nginx,这个发音为“engine X”的开源软件,早已超越了其最初作为HTTP服务器的定位…

作者头像 李华
网站建设 2026/8/2 3:39:37

2026年必看!专业匹克球拍工厂推荐榜单大揭秘,不容错过!

在2026年,匹克球运动正以前所未有的速度在全球范围内掀起热潮。对于广大匹克球爱好者来说,拥有一款专业的匹克球拍至关重要。今天,我们就为大家揭秘一份专业匹克球拍工厂推荐榜单,其中泉州凯瑞麟体育用品有限公司(简称…

作者头像 李华
网站建设 2026/8/2 3:36:31

Python元组核心特性与应用场景全解析:从不可变性到实战技巧

1. 项目概述:为什么元组(tuple)是Python中不可或缺的基石如果你刚开始学Python,可能觉得列表(list)用起来更顺手,想改就改,想加就加。但当你真正开始写项目,尤其是涉及到…

作者头像 李华
网站建设 2026/8/2 3:36:24

EUI-NEO-DX11:轻量级C++ GUI框架与现代DirectX 11渲染实践

如果你正在寻找一个轻量级、高性能的C GUI框架,并且对DirectX 11渲染有需求,那么你很可能已经厌倦了Qt的庞大、MFC的陈旧,或者ImGui的“立即模式”带来的状态管理烦恼。今天要讨论的EUI-NEO-DX11,或许就是你一直在寻找的那个“折中…

作者头像 李华
网站建设 2026/8/2 3:36:10

基于 Highcharts 树形矩阵图实现全国省份人口层级分布

一、前言:为什么选择 Treemap 树形矩阵图 在数据可视化开发中,面对层级分类数值体量对比场景(区域-省份数据、集团-子公司营收、产品线销量等),传统柱状图、饼图存在明显短板:柱状图无法直观体现层级关系&…

作者头像 李华