mysql的binlog_rows_query_log_events和binlog_row_image

1 . binlog_rows_query_log_events
binlog_rows_query_log_events 对binlog_format=row有效,设为true后可以在binary log中记录原始的语句。
2 . binlog_row_image
那么为什么要设置binlog_row_image? binlog的格式ROW格式有各种各样的好处。

  1. 比如加快从库重放日志;ROW直接调用mysql的存储引擎接口(handler API) 来执行行的插入、删除和更新,完全跳过了mysql的优化器的处理逻辑。

  2. 保证主从数据的一致性。记录的每一行的变更。

  3. 可以通过对binlog的逆向解析实现闪回功能。
    那么实际上还是有一个缺陷,那就是由于记录的是每一行的变更,会带来磁盘IO上的开销,同时由于binlog日志变大,网络开销也变大了。那么在MySQL 5.7以后binlog的格式默认就是ROW了,同时引入了新的参数binlog_row_image,

show variables like 'binlog_row_image';
默认为full,在binlog为row格式下,
full将记录update前后所有字段的值.
minimal时,只记录更改字段的值和where字段的值.
noblob时,记录除了blob和text的所有字段的值,如果update的blob或text字段.也只记录该字段更改后的值,更改前的不记录;

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

陈小珂

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值