并发
- 分类
- 数据库
- 难度
- 未设置
- 来源数
- 1
- 更新时间
- 2026/03/29 00:57
答案
事务执行过程当中,server层会将日志写到每个线程自己的binlog cache当中,事务提交的时候再将binlog cache写到binlog日志文件中。 binlog cache的刷盘有三种模式,可以用sync_binlog进行控制: 1. 0:事务提交时执行write,将binlog cache写入系统的page cache,由系统决定什么时候执行fsync写入文件 2. 1:事务提交时执行write将binlog cache写入page cache,系统直接执行fsync(直接刷盘) 3. N:事务提交时write将binlog cache写入page cache,攒够n个再执行fsync
相关题目(5)
什么是热点 key,如何处理?共源 1
分布式系统Redis
watch dog 机制是什么?共源 1
分布式系统并发锁Redis
Redis 如何实现分布式锁?共源 1
分布式系统锁Redis
分布式系统并发Redis
元信息
审核状态: active
关联来源: 1
来源面经题(0)
这道题目前没有手动沉淀的面经题来源。
来源(1)
Java八股(数据库).md
knowledge_noteQuestion 69: binlog什么时候刷盘?
Source answer: 事务执行过程当中,server层会将日志写到每个线程自己的binlog cache当中,事务提交的时候再将binlog cache写到binlog日志文件中。 binlog cache的刷盘有三种模式,可以用sync_binlog进行控制: 1. 0:事务提交时执行write,将binlog cache写入系统的page cache,由系统决定什么时候执行fsync写入文件 2. 1:事务提交时执行write将binlog cache写入page cache,系统直接执行fsync(直接刷盘) 3. N:事务提交时write将binlog cache写入page cache,攒够n个再执行fsync
Reviewed answer: 事务执行过程中,Server层先把日志写入线程私有的binlog cache;事务提交时再写入binlog文件。刷盘策略由 sync_binlog 控制:0表示由系统决定fsync时机,1表示每次提交都fsync,N表示累计N次提交后fsync。