深入理解MySQL主从原理
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

1.4.2 mysqldump导出行为的改变

使用mysqldump导出数据时受到选项set-gtid-purged=AUTO的影响,和在非GITD模式下导出略有不同。假如我们在GTID开启的情况下使用如下语句导出数据:

则会做如下设置:

为什么要这么设置呢?因为如果使用这个备份做主从,是否生成binary log Event就意味着在导入数据的时候是否基于本地数据库生成新的GTID,如果生成了本地GTID显然是不对的,所以将参数SQL_LOG_BIN设置为0是必须的。

接着需要进行 gtid_purged 变量的设置,1.2节已经说过,设置gtid_purged变量会修改mysql.gtid_executed表、gtid_purge变量和gtid_executed变量。

当然也可以使用--set-gtid-purged=OFF选项来告诉mysqldump不需要设置参数SQL_LOG_BIN= 0和gtid_purged变量,但是初始化搭建主从的时候一定不要将其设置为OFF。下面是这个选项的具体输出,供参考。