来源:《MySQL运维内参》 ① 所有的server上执行 set @@global.enforce_gtid_consistency = warn; 特别注意: 这一步是关建的一步使用不能出现警告。会将不符合的语句记入错误日志 ② 所有的server上执行: set @@global.enforce_gtid_consistency = on; ③ 所有的Server上执行(不关心最先最后,但要执行完): set @@global.gtid_mode = off_permissive; ④ 所有的server上执行: set @@global.gtid_mode=on_permissive; 实质在这一步骤生成的日志都是带GTID的日志了,这个步骤号称是不关心任何节点,但从实际管理上推荐在slave上先执行,然后再去master上执行。 ⑤ 确认传统的binlog复制完毕,该值为0 show status like 'ongoing_anonymous_transaction_count'; 所有节点进行判断 show status like 'ongoing_anonymous_transaction_count’; 为零 ⑥ 所有的节点执行: flush logs; 用于切换一下日志。
⑦ 所有的节点启用gtid_mode set @@global.gtid_mode=on; ⑧ 启用Gtid的自动查找节点复制: stop slave; change master to master_auto_position=1;

⑨ 把gtid_mode = on相关配置写入配置文件 gtid_mode=on enforce_gtid_consistency=on