【Mysql】MySQL集群方案之PXC(percona xtradb cluster)

 

Mysql PXC介绍mysql

   在Mysql主从架构上会存在数据弱一致性的问题,数据写入主库以后从库不能立刻获取刚刚插入的数据,同时主从复制过程当中可能会丢掉数据。而在某些业务场景下咱们须要保证数据的强一致性,数据不能丢失,好比交易系统。而PXC就能够保证数据的强一致性。脱胎于MySQL Galera 技术的PXC是MySQL服务和工具提供商percona实现的percona xtradb cluster,简称PXC。sql

   

  PXC提供了读写强一致性的功能,能够保证在任一个节点中写入数据的同时能够同步给其余的节点,其余任一个节点均可以进行读取操做,每一个节点的数据是彻底一致的。PXC集群里任何一个节点数据都是可读可写,能够读写任何一个节点里的数据。数据库

 

PXC的优势:架构

  1.实现mysql数据库集群架构的高可用性和数据的 强一致性。并发

  2.完成了真正的多节点读写的集群方案。工具

      3.改善了传统意义上的主从复制延迟问题,基本上达到了实时同步。性能

  4.新加入的节点能够自动部署,无须提供手动备份,维护起来很方便。spa

  5.PXC集群数据同步是双向的,在第一个节点写入数据,那么会同步其余的节点上。因为是多节点写入,因此数据库故障切换很容易。事务

 

PXC的缺点:部署

  1.新加入的节点开销大,须要复制完整的数据。采用SST传输开销太大。

  2.任何更新事务都须要全局验证经过,才会在每一个节点库上执行。集群性能受限于性能最差的节点,也就是常常说的短板效应。

  3.由于须要保证数据的一致性,因此在多节点并发写时,锁冲突问题比较严重。

  4.存在写扩大问题,全部的节点上都会发生些操做。

  5.只支持innodb存储引擎的表。

  6.没有表级别的锁定,执行DDL语句操做会把整个集群锁住,并且也 kill 不了(建议使用Osc操做,即在线DDL)

  7.全部的表必须含有主键,否则操做数据时会报错。

相关文章
相关标签/搜索