自己原文公众号:
https://mp.weixin.qq.com/s/9rjjXtkSWhoAlimMu8bXXA
数据库总是要升级的。今天谈谈mysql的升级。

主服务器配置添加以下参数
server-id=1
Log-bin=mysql-bin
gtid_mode=ON
enforce-gtid-consistency=ON
----- 要启用基于GTID 的复制,每个服务器必须启用GTID 模式,将gtid_mode 变量设置为ON ,并启用enforce_gtid_consistency 变量,以确保只有对基于GTID 的复制是安全的语句被记录。
创建复制用户并授权
mysql> create user 'repl'@'%' identifiedby 'Pass2020@';
mysql> grant replication slave on *.* to'repl'@'%'; --- 仅用于复制, 只需要replication slave 权限

3.
从服务器配置添加以下参数
server-id=2
gtid_mode=ON
enforce-gtid-consistency=ON
将主库db
导出到db.sql
并通过scp
命令复制到从服务器上:

mysql>CHANGE REPLICATION SOURCE TOSOURCE_HOST = '10.60.156.179', SOURCE_PORT =3306, SOURCE_USER = 'repl', SOURCE_PASSWORD= 'Pass2020@', SOURCE_AUTO_POSITION =1;
mysql> START SLAVE;
此时查看从库发现主库新增数据已同步

其实这一切源于GTID。正因为有了这个可以不用MHA、不用binlog的位置。太方便了。
然后可以关闭5.7的库,应用指向新的数据库了。停机估计1min左右。
