暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

知识点 | MySQL InnoDB Cluster 的几点建议

原创 杨磊 2021-06-22
586

MySQL InnoDB Cluster官方手册的架构图示
image.png

该架构中包含:MySQL router, MySQL Servers, MySQL Shell。

  1. MySQL router: 属于一个TCP模型的Proxy主要用于流量中转及基于端口号的读写分离。在3306π社区广州站听官方人员透漏基于shared方式的router也快要出来了,敬请期待。
  2. MySQL Servers: 该部分即为MySQL Group Replication即MGR,这个MGR属于Single primary模式。
  3. MySQL Shell: 用于搭建和管理MGR集群的一个客户端工具集。该工具基本是整合了原来官方的mysql utilis工具集。

目前对于使用MGR还是优先建议使用Single Primary结合mysql router使用;MGR也是基于GTID复制的一种实现。

MGR使用上的一些推荐意见:

  1. 强烈建议使用mysqlshell进行部署、管理

  2. MySQL版本需要8.0.20及以上

  3. 使用奇数个节点:3,5,7,9 最多9个成员

  4. 尽量避免WAN部署,要求网络稳定,延迟要低

  5. 必须使用InnoDB引擎

  6. 没有特殊要求,尽量使用单主模式(强推荐)

  7. 在多主模式下DML和DDL对同一个表的操作,必须在同一个节点进行,否则会导致集群会crash

  8. 在多主模式使用select for update可能会导致整个集群死锁

  9. 必须启用GTID

  10. 不支持GAP LOCK ,MGR工作在RC模式

  11. 不支持serializable事务隔离

  12. 表必须有主键

  13. BINLOG_FORMAT=ROW

  14. 禁止使用外键

文章结束。

以下为个人公众号,欢迎扫码关注:
image.png

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论