mysql Pxc工作原理_浅谈MySQL-PXC架构

本文深入探讨MySQL-PXC集群的工作原理,包括其高可用性、数据同步与一致性保证。同时,文章详述了PXC的优缺点,如实时同步、数据一致性与写放大问题。此外,还介绍了PXC的安装配置过程,包括常用端口、节点状态变化、数据传输方式(SST、IST)以及关键配置参数。最后,提供了将从节点转换为PXC节点的步骤。
摘要由CSDN通过智能技术生成

一、PXC概述

PXC是基于Galera协议的MySQL高可用集群架构。具有高可用性、方便扩展且可以实现多个MySQL节点间的数据同步复制和读写,保证数据的强一致性。可以基本达到实时同步且相互的关系是对等的,各节点之间各自为主,这种架构不共享任何数据,是一种高冗余架构。

PXC的操作流程。首先客户端发起一个事务,该事务先在本地执行,执行完成后发起对事务的提交操作前会将产生的复制集广播出去获得一个全局的事务ID号一起传送给其它节点,其它的节点经过验证合并数据后发现没有冲突数据则执行apply_cb和commit_cb操作,否则就执行discard(取消)此次事务操作。当前节点通过验证之后执行提交并返回OK,如果验证不通过则执行回滚。生产环境中如果有一个节点验证没有通过,产生数据冲突则会将不一致的节点踢出集群,被踢出节点自己会执行shutdown。

二、PXC架构优缺点

2.1 优点

(1)实现了MySQL数据库的高可用和数据的强一致性

(2)完成了真正的多节点读写的集群方案

(3)基本达到了实时同步,改善了传统意义上的主从延迟问题

(4)新加入的节点可以自动部署,无需提供手动备份

(5)数据库的故障切换容易

2.2 缺点

(1)新加入的节点开销大,需要复制完整的数据。采用sst传输开销太大

(2)任何更新事务都需要全局验证通过,才会在每个节点库上执行,集群性能受限于性能最差的节点(短板效应)。

(3)因为需要保证数据的一致性,所以在多个节点并发写时,所冲突比较严重

(4)存在写扩大问题,所有节点都会发生写操作

(5)只支持InnoDB存储引擎

(6)没有表

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值