MySQL binlog相关参数

本文介绍了MySQL binlog的相关参数,如binlog_cache_size、binlog_checksum、binlog_format等,详细解析了它们的作用和影响,重点关注了binlog在事务处理、数据一致性、性能优化等方面的功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

binlog_cache_size
每个线程的binlog cache大小,如果超过了会将binlog暂存到磁盘上,影响性能。
在这里插入图片描述

binlog_checksum
binlog校验码,默认是采用CRC32,会为每一个binlog event写一个校验码;可指定为none关闭,关闭后只通过binlog event的长度来校验一致性。
在这里插入图片描述

binlog_direct_non_transactional_updates
在statement格式的binlog模式下,对于一个事务包含非事务表和事务表,MySQL会试图将非事务语句暂存在一个事务cache里,而不是非事务语句执行完之后就马上写入非事务语句的binlog;
最终是等到发起commit时,才按照事务里的语句顺序写入binlog,通过这种方式尽可能地保证在一个事务里非事务语句和事务语句的先后顺序,防止在从库复制发生主从不一致的情况。
而binlog_direct_non_transactional_updates默认OFF,就代表以上的处理方法;如果binlog_direct_non_transactional_updates设为on,则表示一个事务里的非事务语句执行完后,马上写入binlog。
在这里插入图片描述

binlog_error_action
5.7.7以后,默认为abort_server,表示当binlog出现无法写入,无法flush,或无法sync时,MySQL主动关闭实例;到重启时,所有处于prepared阶段且提交binlog成功的事务会被commit,而处于prepared但未写入binlog的事务,会回滚。
还可以取值为ignore_error,表示当binlog出现无法写入,无法flush,或无法sync时,关闭binlog模式,但MySQL实例继续对外提供服务;要恢复binlog功能,要重新开启log_bin参数。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值