Percona XtraDB Cluster 的一些使用限制(PXC 5.7)

本文涉及的产品
RDS AI 助手,专业版
RDS MySQL DuckDB 分析主实例,集群系列 4核8GB
RDS MySQL DuckDB 分析主实例,基础系列 4核8GB
简介:

Percona XtraDB Cluster有众多的优秀特性,使得mysql集群得以轻松实现。但是不要忽略了它的一些限制。如果你无法接受,或者你的应用程序或数据库(比如使用了memory引擎)对限制无法做出调整,那PXC对你而言是不合适。限制有哪些呢,下文是其描述。

1、存储引擎:

  基于PXC的复制仅适用于InnoDB存储引擎。
  对其他存储引擎的表,包括mysql.*表之类的系统表,任何写入都不会被复制。
  那问题来了,如此这般创建用户那岂不是无法同步了?关于这个问题。对于基于DDL方式的语句还是被支持的。
  DDL语句使用基于语句级别的方式来实现(即不使用row模式)。
  对mysql.*表的所有已DDL方式的更改都将以语句级别式进行复制。
  如:CREATE USER... DDL被复制(语句级)
    INSERT INTO mysql.user... myisam存储引擎,不会被复制,因为非DDL语句
    当然也可以配置wsrep_replicate_myisam参数实现(不建议使用)

2、不支持的查询:

  LOCK TABLES在多主模式中不支持UNLOCK TABLES以及LOCK TABLES
  锁定功能,如GET_LOCK(),RELEASE_LOCK()等也不被支持

3、查询日志不能定向到表:

  如果启用查询日志记录,则必须将日志转发到文件
  使用general_log和general_log_file选择查询日志记录和日志文件名称
  log_output = file # Author : Leshami # Blog : https://blog.csdn.net/leshami

4、最大事务大小:

  允许的最大事务大小由wsrep_max_ws_rows和wsrep_max_ws_size变量定义
  LOAD DATA INFILE方式处理每10000行提交一次。对于大的事务将被分解众多小型事务

5、集群乐观并发控制:

  PXC集群使用乐观并发控制,事务发出COMMIT可能仍会在该阶段中止
  可以有两个事务写入相同的行并在单独的Percona XtraDB集群节点中提交,并且只有其中一个可以成功提交。
  失败的将被中止。对于集群级中止,Percona XtraDB集群返回死锁错误代码:
    (Error: 1213 SQLSTATE: 40001 (ER_LOCK_DEADLOCK)).

6、由于可能的提交回滚,XA事务不受支持:

7、硬件配置短板限制:

  整个群集的写吞吐量受最弱节点的限制。如果一个节点变慢,整个集群变慢。
  如果您对稳定的高性能有要求,那么它应该由相应的硬件支持。

8、建议的最小群集大小是3个节点。第三个节点可以是仲裁者。

9、InnoDB虚假更改功能不受支持。

10、enforce_storage_engine=InnoDB与wsrep_replicate_myisam=OFF(默认)不兼容 。

11、binlog_rows_query_log_events变量不受支持。

12、高负载时避免ALTER TABLE ... IMPORT / EXPORT

  在集群模式下运行Percona XtraDB集群时,请避免ALTER TABLE ... IMPORT / EXPORT工作负载。
  如果未在所有节点上同步执行,则可能导致节点不一致。

参考链接:https://www.percona.com/doc/percona-xtradb-cluster/LATEST/limitation.html

相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。   相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情: https://www.aliyun.com/product/rds/mysql 
目录
相关文章
|
7月前
|
人工智能 监控 前端开发
支付宝 AI 出行助手高效研发指南:4 人团队的架构迁移与提效实战
支付宝「AI 出行助手」是一款集成公交、地铁、火车票、机票、打车等多项功能的智能出行产品。
1121 21
支付宝 AI 出行助手高效研发指南:4 人团队的架构迁移与提效实战
|
3月前
|
SQL 关系型数据库 Apache
Apache Doris 实时更新全解:从设计原理到最佳实践|Deep Dive
本文档将作为一份官方指南,系统性地阐述 Apache Doris 的数据更新能力,内容涵盖其核心原理、多样的更新与删除方式、典型的应用场景,以及在不同部署模式下的性能最佳实践,旨在帮助您全面掌握并高效利用 Doris 的数据更新功能。
335 0
Apache Doris 实时更新全解:从设计原理到最佳实践|Deep Dive
|
7月前
|
人工智能 自然语言处理 Serverless
Vibecoding 新体验:实测 Qwen3 Coder 代码生成效果
Qwen3 Coder 是一款强大的编程大语言模型,支持超长 1M 上下文,具备卓越的代码生成能力。结合 VibeCoding 方案,可助力开发者与企业快速构建复杂应用,实现自然语言生成系统,提升开发效率与生产力。
|
8月前
|
人工智能 安全 API
用Qwen Code,体验全新AI编程——高效模型接入首选ModelGate
Qwen Code 是通义千问推出的AI编程助手,支持自然语言编程与智能代码生成,大幅提升开发效率。结合 ModelGate,可实现多模型统一管理、安全调用,解决API切换、权限控制、稳定性等问题,是Claude Code的理想国产替代方案。
|
缓存 并行计算 数据可视化
Matplotlib性能优化:提升图表渲染速度
【4月更文挑战第17天】提升 Matplotlib 渲染速度的技巧:1) 减少数据点;2) 使用矢量化操作;3) 减少图表元素;4) 增量渲染;5) 优化图像保存;6) 更换更快的后端;7) 并行处理;8) 避免循环内绘图;9) 利用缓存;10) 使用专业图形工具。注意根据具体需求调整优化策略。
1746 2
|
前端开发 JavaScript 安全
【前端开发新境界】React TypeScript融合之路:从零起步构建类型安全的React应用,全面提升代码质量和开发效率的实战指南!
【8月更文挑战第31天】《React TypeScript融合之路:类型安全的React应用开发》是一篇详细教程,介绍如何结合TypeScript提升React应用的可读性和健壮性。从环境搭建、基础语法到类型化组件、状态管理及Hooks使用,逐步展示TypeScript在复杂前端项目中的优势。适合各水平开发者学习,助力构建高质量应用。
417 0
|
消息中间件 存储 Apache
MQ产品使用合集之有RocketMQ arm架构的镜像吗
消息队列(MQ)是一种用于异步通信和解耦的应用程序间消息传递的服务,广泛应用于分布式系统中。针对不同的MQ产品,如阿里云的RocketMQ、RabbitMQ等,它们在实现上述场景时可能会有不同的特性和优势,比如RocketMQ强调高吞吐量、低延迟和高可用性,适合大规模分布式系统;而RabbitMQ则以其灵活的路由规则和丰富的协议支持受到青睐。下面是一些常见的消息队列MQ产品的使用场景合集,这些场景涵盖了多种行业和业务需求。
732 1
|
Prometheus 监控 Cloud Native
【UVM源码学习】uvm_comparer
【UVM源码学习】uvm_comparer
1020 0
【UVM源码学习】uvm_comparer

热门文章

最新文章