mysql binlog的三种模式

mysql的binlog有3种记录模式STATEMENT,ROW,MIXED


Statement:基于sql语句的复制
优点:不需要记录每一行的变化,减少了binlog日志量,节约了IO,提高性能
缺点:


ROW:基于行的复制
优点:所有的语句都可以复制,不记录执行的sql语句的上下文相关的信息,仅需要记录那一条记录被修改成什么了
缺点:binlog 大了很多,复杂的回滚时 binlog 中会包含大量的数据;主服务器上执行update语句时,所有发生变化的记录都会写到 binlog 中,而Statement只会写一次


MIXED:混合模式复制,
优点:结合Statement和ROW的优点,会根据执行的每一条具体的sql语句来区分对待记录的日志形式,也就是在Statement和Row之间选择一种,推荐使用


查看当前binlog的格式

mysql> show variables like 'binlog_format';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| binlog_format | MIXED |
+---------------+-------+
1 row in set (0.00 sec)


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值