1.2 Percona XtraDB Cluster Limitations

摘要: 出处:黑洞中的奇点 的博客 http://www.cnblogs.com/kelvin19840813/ 您的支持是对博主最大的鼓励,感谢您的认真阅读。本文版权归作者所有,欢迎转载,但请保留该声明。

 

以下适用于Percona XtraDB限制
优点:
• 执行查询时,它在节点上本地执行。所有数据在本地可用,无需远程访问。
• 没有中央管理。您可以在任何时间点释放任何节点,集群将继续工作没有任何数据丢失。
• 缩放读取工作负载的良好解决方案。您可以将读取查询任何节点。

缺点:
• 配置新节点的开销。添加新节点时,必须从其中一个节点复制完整数据集现有节点。如果是100GB,它复制100GB。
• 这不能用作有效的写缩放解决方案。
写吞吐量可能有一些改进当你运行写流量到2个节点,而所有流量到1个节点,但你不能指望很多。
所有写入仍然有去所有节点。
• 您有多个数据副本,对于3个节点,您有3个副本。

推荐用XtraBackup传输数据

• 只复制InnoDB , 但是,DDL语句会在语句级别进行复制,并进行更改到mysql.*表将以这种方式复制。
CREATE USER... , INSERT INTO mysql.user...不复制 , 您可以启用实验MyISAM复制支持使用wsrep_replicate_myisam变量。

• 不支持查询:
在多个master不支持 LOCK TABLES 和 UNLOCK TABLES

• 查询日志不能被定向到表。如果启用查询日志记录,则必须将日志转发到文件:
log_output = FILE
使用general_log和general_log_file选择查询日志记录和日志文件名。

• 最大允许的事务大小由 wsrep_max_ws_rows 和 wsrep_max_ws_size 定义变量。
LOAD DATA INFILE处理将每10000行提交一次。如此大的交易,由于“load_data”将切分小事务。

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

• 由于可能在提交时回滚,不支持XA事务。

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

• 集群的最小推荐大小为3个节点。第3节点可以是仲裁器。

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

• binlog_rows_query_log_events不支持

• 在SST或XtraBackup期间使用的备份锁可能会崩溃。
对donor,在my.cnf中的[sst]下使用 inno-backup-opts =' - no-backup-locks' 或设置 FORCE_FTWRL = 1 在/etc/sysconfig/mysql(或/etc/sysconfig/mysql.%i对应的单位/服务)中为CentOS / RHEL或/ etc / default / mysql在Debian / Ubuntu。您也可以使用rsync作为备用SST方法。

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

 

你可能感兴趣的:(1.2 Percona XtraDB Cluster Limitations)