在事务性语句执行过程中,服务器将会进行额外的处理,在服务器执行时多个事务是并行执行的,为了把他们的记录在一起,需要引入事务缓存的概念。在事务完成被提交的时候一同刷新到二进制日志。对于非事务性语句的处理。遵循以下3条规则:
1)如果非事务性语句被标记为事务性,那么将被写入事务缓冲。
2)如果没有标记为事务性语句,而且事务缓存中没有,那么直接写入二进制日志。
3)如果没有标记为事务性的,但是事务缓存中有,那么写入事务缓冲。
注意如果在一个事务中有非事务性语句,那么将会利用规则2,优先将该影响非事务表语句直接写入二进制日志。
您可能感兴趣的文章:
- MySQL中Binary Log二进制日志文件的基本操作命令小结
- MySQL日志文件详解
- Mysql日志文件和日志类型介绍
- mysql二进制日志文件恢复数据库
- 教你自动恢复MySQL数据库的日志文件(binlog)
- mysql日志文件在哪 如何修改MySQL日志文件位置
- 解决Mysql收缩事务日志和日志文件过大无法收缩问题