您的位置:首页 > 数据库 > MySQL

MySQL5.7 GTID在线开启与关闭【转】

2018-03-01 11:02 435 查看

当前场景

当前某些业务还有未开启GTID服务组,升级5.7后,如何检测是否符合开启GTID条件,如何在线修改切换使用GTID;已经升级5.7后,已经开启GTID,如何快速回滚后退;
线上gtid如何维护等等,以上场景通过归纳下面内容解决

gtid_mode参数新选项值

online gtid enable

online gtid disable

gtid_mode参数新选项

mysql 5.7.6后,mysql提供了两个额外选项off_permissive和on_permissive
off
off_permissive
on_permissive
on
上面四个状态变更必须是按照顺序变更,如不允许gtid_mode=off,直接变更为on_permissive;
当设置为off_permissive,不产生GTID事务, Slave接受不带GTID的事务(匿名事务)也接受带GTID的事务
当设置为on_permissive时,新事务为gtid事务,slave接受GTID事务也接受不带GTID事务
gtid值master 与slave 兼容性列表



上表说明
Y: 表示master和slave的gtid值是兼容的
N:表示master和slave的gtid值是不兼容的
Y*:表示auto_positioning是可用的

online gtid enable

限制条件: mysql 版本需5.7.6之后;所有server gtid_mode=off
1 、在每一台服务器上执行。err log没有任何warning产生 ,这是非常重要的一步,确保没有error log产生继续step 2;主要验证是否可以开启gtid,如create table select* from table 不支持事件

set @@global.enforce_gtid_consistency=warn;

2、在每一台server上执行

set @@global.enforce_gtid_consistency=on;

3、每一台server 执行,在那一台服务器执行没有先后之分

set @@global.gtid_mode=off_permissive;

4、每一台server 执行,执行顺序没有先后之分,要保证下一步操作之前,上面的操作都已在所有server上执行过

set @@global.gtid_mode=on_permissive;

5、保证每一台ongoing_anonymous_transaction_count状态值为零

show status like 'ongoing_anonymous_transaction_count';

6、等待步骤5生成的所有事务复制到所有服务器,此时不需要停止服务器更新,要保证所有的匿名事务都已经复制
7、步骤六完成,基本上可以进行步骤8.(此处没有考虑备份和restore情况)
8、设置 gtid_mode=on

set @@global.gtid_mode=on;

9、持久化my.cnf ,每台slave上执行

stop slave;
change master to master_auto_position=1 ;
start slave;

online gtid disable

限制:所有server必须5.7.6之后;gtid_mode=on
1、每一台slave上执行

stop slave;
change master to master_auto_position=0,master_log_file='mysql-bin.000383',master_log_pos= 245710922 ;
start slave;

2、在每一台server上执行

set @@global.gtid_mode=on_permissive;

3、在每一台server上执行 保证下一步操作之前,上面的操作都已在所有server上执行过

set @@global.gtid_mode=off_permissive;

4、在每一台server上执行,保证global.gtid_owned变量字符串为空。

select @@global.gtid_owned;

5、等待存在于binlog 中的事物都已经apply到slave
6、没有略过,在此过程中需关注是否有备份或restore
7、每一台server执行

set @@global.gtid_mode=off ;

8、持久化gtid_mode=off 到my.cnf配置文件

转自

MySQL5.7 GTID在线开启与关闭 - CSDN博客 http://blog.csdn.net/aeolus_pu/article/details/78502846
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: