mysql二进制日志处理事务和非事务性语句的区别

来源:互联网 发布:监管资本 知乎 编辑:程序博客网 时间:2024/05/02 02:20

在事务性语句执行过程中,服务器将会进行额外的处理,在服务器执行时多个事务是并行执行的,为了把他们的记录在一起,需要引入事务缓存的概念。在事务完成被提交的时候一同刷新到二进制日志。对于非事务性语句的处理。遵循以下3条规则:

1如果非事务性语句被标记为事务性,那么将被写入事务缓冲。

2如果没有标记为事务性语句,而且事务缓存中没有,那么直接写入二进制日志。

3如果没有标记为事务性的,但是事务缓存中有,那么写入事务缓冲。

注意如果在一个事务中有非事务性语句,那么将会利用规则2,优先将该影响非事务表语句直接写入二进制日志。


原创粉丝点击