时间:2021-07-01 10:21:17 帮助过:13人阅读
首先从重启MySQL来介绍,开启、关闭、重启MySQL的方式有很多,其中最方便的方法如下:
打开iis7服务器监控工具:
不管是重启、开启、关闭MySQL,都可以用它一键完成。
幸运地是,MySQL 5.7版本,提供了在线开启GTID的功能,可以在不中断业务、不重启MySQL的情况下开启GTID,下面具体介绍,MySQL 5.7 如何在线开启和关闭GTID。
MySQL 5.7 在线开启GTID:
确认MySQL集群中所有节点的版本都是 5.7.6 及以上,且所有节点的gtid_mode为OFF。在每个MySQL节点上设置 SET @@GLOBAL.ENFORCE_GTID_CONSISTENCY = WARN; 观察一段时间MySQL的错误日志,有没有warnings,如果没有,进入下一步。如果有warnings,说明业务可能使用了与gtid不兼容的特性,要根据具体的日志信息来排查,直到没有warnings日志产生为止。在每个MySQL节点上设置 SET @@GLOBAL.ENFORCE_GTID_CONSISTENCY = ON;在每个MySQL节点上设置 SET @@GLOBAL.GTID_MODE = OFF_PERMISSIVE;在每个MySQL节点上设置 SET @@GLOBAL.GTID_MODE = ON_PERMISSIVE;在每个MySQL节点上,执行 SHOW STATUS LIKE ‘ONGOING_ANONYMOUS_TRANSACTION_COUNT‘; 确认所有节点上的该值为0,才能进入下一步。在每个MySQL节点上,执行 SET @@GLOBAL.GTID_MODE = ON;在每个MySQL节点上,把 gtid_mode=ON, ENFORCE_GTID_CONSISTENCY=ON 添加到配置文件 my.cnf。在每个MySQL从库上,执行STOP SLAVE;CHANGE MASTER TO MASTER_AUTO_POSITION = 1;START SLAVE;检查MySQL集群所有节点,基于GTID的主从复制是否正常。MySQL 5.7 在线关闭GTID:
确认MySQL集群中所有节点的版本都是 5.7.6 及以上,且所有节点的gtid_mode为ON。在每个MySQL从库上,执行STOP SLAVE;CHANGE MASTER TO MASTER_AUTO_POSITION = 0, MASTER_LOG_FILE = {file}, MASTER_LOG_POS = {position};START SLAVE;在每个MySQL节点上,执行 SET @@GLOBAL.GTID_MODE = ON_PERMISSIVE;在每个MySQL节点上,执行 SET @@GLOBAL.GTID_MODE = OFF_PERMISSIVE;在每个MySQL节点上,执行 SELECT @@GLOBAL.GTID_OWNED;确认该值为空,才能进入下一步。在每个MySQL节点上,执行 SET @@GLOBAL.GTID_MODE = OFF;在每个MySQL节点上,把 gtid_mode=OFF, ENFORCE_GTID_CONSISTENCY=OFF 添加到配置文件 my.cnf。检查MySQL集群所有节点,基于binlog+position主从复制是否正常。
MySQL GTID已是标配,也是大势所趋,对于使用MySQL 5.6 及以上版本的用户,强烈建议打开基于GTID的主从复制。
MySQL控制软件及GTID功能介绍
标签:介绍 mysql集群 iis7 在线 gtid change 集群 glob nlog