组复制官方翻译七、Requirements and Limitations

简介: https://dev.mysql.com/doc/refman/8.0/en/group-replication-requirements-and-limitations.html关于Group Replication System Variables这一节没有讲,主要是变量属于工具类,需要查看的时候去搜一下即可https://dev.

https://dev.mysql.com/doc/refman/8.0/en/group-replication-requirements-and-limitations.html

关于Group Replication System Variables这一节没有讲,主要是变量属于工具类,需要查看的时候去搜一下即可

https://dev.mysql.com/doc/refman/8.0/en/group-replication-options.html

18.8.1 Group Replication Requirements

需要使用MGR的实例必须满足如下要求

基础设施

  • InnoDB存储引擎
  • 主键
  • 网络性能

实例配置

  • 开启binlog
  • log-slave-update=on
  • binlog必须是row格式
  • GTID=on
  • 复制信息必须以table存储 --master-info-repository=TABLE and --relay-log-info-repository=TABLE
  • 事务写集 --transaction-write-set-extraction=XXHASH64
  • 多线程复制开启
1.  slave_parallel_type=LOGICAL_CLOCK
2.  slave_preserve_commit_order=1
3.  slave_parallel_workers= (0~1024)  ## 可以配置使用多线程,也可以不使用多线程

18.8.2 Group Replication Limitations

下面列了一些已知的MGR的限制

注意:由于MGR是在GTID的基础上构建的,所以GTID的限制也同样是MGR的限制 Section 17.1.3.6, “Restrictions on Replication with GTIDs”.

  • 复制event的checksums --binlog-checksum=NONE
由于设计的问题,MGR不能使用event的checksums

--binlog-checksum=NONE 必须这样设置
  • Gap locks , 建议设置隔离级别为 READ COMMITTED
由于认证阶段无法使用gap lock,所以建议使用隔离级别为READ COMMITTED,READ COMMITTED 不适用gap locks
  • SERIALIZABLE , MGR不支持SERIALIZABLE隔离级别
  • 并发DDL和DML在同一个对象上的操作,会有问题
举例:
    A实例 表t进行DDL
    B实例 表t进行dml
    会导致冲突无法检测到,会有很高的风险
    这种情况一般在multi-primary模式下容易遇到(因为多实例写嘛的原因嘛),所以DDL要特别小心
  • 外键级联约束
  • 大事务
在5秒钟的世界窗口中如果无法将事务copy到其他成员的话,那么MGR的通信会失败,重传,会有严重影响
建议切分、限制 事务大小
  • multi-primary的死锁检测
多主模式下,如果使用SELECT .. FOR UPDATE 会导致死锁

主要是lock无法跨越多服务器
  • 复制过滤
MGR中不要使用任何复制的filter
目录
相关文章
|
5月前
|
算法 Shell 开发工具
Git 中文参考(四)(9)
Git 中文参考(四)
35 2
|
5月前
|
存储 安全 开发工具
Git 中文参考(一)(3)
Git 中文参考(一)
26 2
|
5月前
|
存储 Java 开发工具
Git 中文参考(五)(6)
Git 中文参考(五)
68 2
|
5月前
|
存储 网络安全 开发工具
Git 中文参考(一)(7)
Git 中文参考(一)
59 2
|
5月前
|
存储 开发工具 git
Git 中文参考(一)(4)
Git 中文参考(一)
42 2
|
5月前
|
存储 Shell 开发工具
Git 中文参考(七)(9)
Git 中文参考(七)
52 1
|
5月前
|
人工智能 算法 Unix
Git 中文参考(四)(5)
Git 中文参考(四)
26 1
|
5月前
|
存储 网络安全 开发工具
Git 中文参考(一)(9)
Git 中文参考(一)
70 1
|
5月前
|
存储 安全 开发工具
Git 中文参考(五)(3)
Git 中文参考(五)
48 1
|
5月前
|
存储 开发工具 git
Git 中文参考(七)(2)
Git 中文参考(七)
26 0