mysql系列~GTID基础()

一 简介  1 在主从首次同步时(master_auto_position=1),slave会通过gtid协议将自己已经执行的gtid set(@@global.gtid_executed)发给master,master比较后从首个未被执行的GTID事务开始主从同步  2 在每个binlog开头会记录已经执行过的gtid集合,这样的好处是解析binlog就能得到对应已执行过的最大集合   3 全局的执行gtid_executed是唯一的,适用于整个集群  4 一个集群存在多个主机gtid集合的最有可能情况有两个      1 是执行过类似MHA的切换 2 从库有数据写入二 具体参数   gtid_mode=on   enforce-gtid-consistency=on #gtid的强约束   log-slave-updates=1 #5.6需要开启参数,因为gtid_executed是记录在文件中三 相关表  1 gtid_purged 被删除的binlog事务集合   2 gtid_executed 已经执行过的事务集合四 备份恢复  1 gtid_executed包含gtid_purged集合,如果想设置gtid_purged,gtid_executed必须设置为空.所以执行备份恢复时必须先清空gtid_executed  2 清空gtid_executed的办法就是reset master.当执行完reset masterm,set gtid_purged=”之后,gtid_executed的值也会同步,和手动设置gtid_purged的值一样五 DUMP  1 dump导出GTID模式下的数据默认会设置语句set global gtid_pured=”; 所以记得dump的时候加上 –set-gtid-purged=off六 在线转换  1  mysql 5.7版本支持由传统模式转换成GTID的在线切换,反之也能正常切换

七 跳过异常  stop slave; # 关闭 slave 复制  SET GTID_NEXT=’$GTID_NO’; # 设置 GTID_NEXT 为复制出错的 GTID_NO  begin; commit; # 向 $GTID_NO 写入空事务  SET GTID_NEXT=”AUTOMATIC”; # 重新设置 GTID_NEXT 为自动获取  start slave; # 启动 slave 复制

————————

一 简介  1 在主从首次同步时(master_auto_position=1),slave会通过gtid协议将自己已经执行的gtid set(@@global.gtid_executed)发给master,master比较后从首个未被执行的GTID事务开始主从同步  2 在每个binlog开头会记录已经执行过的gtid集合,这样的好处是解析binlog就能得到对应已执行过的最大集合   3 全局的执行gtid_executed是唯一的,适用于整个集群  4 一个集群存在多个主机gtid集合的最有可能情况有两个      1 是执行过类似MHA的切换 2 从库有数据写入二 具体参数   gtid_mode=on   enforce-gtid-consistency=on #gtid的强约束   log-slave-updates=1 #5.6需要开启参数,因为gtid_executed是记录在文件中三 相关表  1 gtid_purged 被删除的binlog事务集合   2 gtid_executed 已经执行过的事务集合四 备份恢复  1 gtid_executed包含gtid_purged集合,如果想设置gtid_purged,gtid_executed必须设置为空.所以执行备份恢复时必须先清空gtid_executed  2 清空gtid_executed的办法就是reset master.当执行完reset masterm,set gtid_purged=”之后,gtid_executed的值也会同步,和手动设置gtid_purged的值一样五 DUMP  1 dump导出GTID模式下的数据默认会设置语句set global gtid_pured=”; 所以记得dump的时候加上 –set-gtid-purged=off六 在线转换  1  mysql 5.7版本支持由传统模式转换成GTID的在线切换,反之也能正常切换

七 跳过异常  stop slave; # 关闭 slave 复制  SET GTID_NEXT=’$GTID_NO’; # 设置 GTID_NEXT 为复制出错的 GTID_NO  begin; commit; # 向 $GTID_NO 写入空事务  SET GTID_NEXT=”AUTOMATIC”; # 重新设置 GTID_NEXT 为自动获取  start slave; # 启动 slave 复制