技术分享
社区投稿 | MySQL MGR”一致性读写”特性解读
MGR并不是全同步方案,关于如何处理一致性读写的问题,MySQL 在8.0.14版本中加入了“读写一致性”特性,并引入了参数:group_replication_consistenc,下面将对读写一致性的相关参数及不同应用场景进行详细说明。
MGR并不是全同步方案,关于如何处理一致性读写的问题,MySQL 在8.0.14版本中加入了“读写一致性”特性,并引入了参数:group_replication_consistenc,下面将对读写一致性的相关参数及不同应用场景进行详细说明。
4月13日 DBLE团队资深研发,携带着他多年的分布式中间件的开发和调优经验;结合各大金融和互联网项目的实战经历,讲讲基于分布式中间件的 SQL 改造的最佳实践;希望通过分享 SQL 语句的改造方法和实施原则,给大家在解决 MySQL 大容量、大并发等分布式场景提供参考。
本文要讨论的bug就是来源于Sync 阶段中的那个binlog参数binlog_group_commit_sync_delay,在MySQL 5.7.19中,如果该参数不为10的倍数,则会导致事务在Sync 阶段等待极大的时间,表现出来的现象就是执行的sql长时间无法返回。该bug已在MySQL 5.7.24和8.0.13被修复。
首先分析一下这个场景的加锁情况和死锁原因,然后对于差异的点进行展开,最后总结 insert 的加锁情况(关于 insert 的加锁行为,其实不像 delete 那样简单清晰,里面有一些需要注意的点)。