ITPub博客

首页 > Linux操作系统 > Linux操作系统 > Percona XtraDB Cluster 的一些使用限制(PXC 5.7)

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

原创 Linux操作系统 作者:张冲andy 时间:2018-10-09 15:44:38 0 删除 编辑

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

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


来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/31383567/viewspace-2215749/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
11g oracle ocp、5.6 mysql ocp , 专注数据库领域,熟悉oracle、mysql、redis、mongodb等相关技术

注册时间:2016-08-11

  • 博文量
    553
  • 访问量
    139173