AIOps 一场颠覆传统运维的盛筵
830
2022-11-05
MySQL GTID 错误处理汇总
转自:http://blog.csdn.net/leshami/article/details/52778480作者:Leshami
MySQL GTID是在传统的mysql主从复制的基础之上演化而来的产物,即通过UUID加上事务ID的方式来确保每一个事物的唯一性。这样的操作方式使得我们不再需要关心所谓的log_file和log_Pos,只是简单的告诉从库,从哪个服务器上去找主库就OK了。简化了主从的搭建以及failover的过程,同时比传统的复制更加安全可靠。由于GTID是连续没有空洞的,因此主从库出现数据冲突时,可以通过注入空事物的方式进行跳过。本文主要讲述GTID主从架构的错误处理方式。
一、GTID的相关特性
配置MySQL GTID 主从复制 基于mysqldump搭建gtid主从
二、GTID如何跳过事务冲突
三、GTID事务冲突的几种常见类型
四、示例演示
1、从库报主键重复(Errno: 1062)
2、从库报找不到对应的被更新的记录(Errno: 1032)
3、从库找不到对应的被删除的记录(Errno: 1032)
4、延迟从修复主库意外truncate
5、主库binlog被purge的情形(Errno: 1236)
五、小结
1、GTID是全局事务ID,简化了主从架构的部署使得从库不再需要关心log_file和log_pos 2、由于事务ID的唯一性,使得将其他从库的GTID应用到其它从库成为可能,即提供了便利的failover 3、GTID是连续的,非空洞性的,因此,对于冲突的情形,需要注入空的事务来实现 4、可以通过配置延迟从来避免主库上意外的删除对象导致的人为错误
商务合作,请yunweibang555
发表评论
暂时没有评论,来抢沙发吧~