标签:binlog format 主从复制 ROW
需求公司内部有几十套基于传统复制的MySQL主从实例,而且binlog的格式都是STATEMENT格式。在接手这些MySQL主从实例之后就有考虑过想将binlog格式更改成ROW格式。而这次则是因为我们elk上面一个第三方工具需要解析和监听binlog信息,并且只能解析ROW格式的binlog,借此机会正好将公司部分MySQL主从复制实例的binlog格式更改成ROW格式。
虽然binlog变更是可以进行在线修改的,但是由于MySQL的master上面存在许多的长链接,哪怕你动态修改之后,长链接的写入和修改还是旧的binlog格式。在这里最开始有提出过俩个方案:
最后还是回归到需求本身,关于我们的需求就是需要解析binlog的格式是ROW格式,所以我们最后的方案就是在slave上面修改binlog的格式为ROW格式。(log_slave_updates参数必须在slave上面打开。否则master通过binlog传递到slave上面重放的SQL是不会在slave本地的binlog记录的)
【20180507】MySQL主从在线修改binlog格式从STATEMENT更改成ROW格式
标签:binlog format 主从复制 ROW
原文地址:http://blog.51cto.com/11819159/2113689