解析MySQL二进制日志处理事务与非事务性语句的区别
2022-11-12 09:28:23
内容摘要
这篇文章主要为大家详细介绍了解析MySQL二进制日志处理事务与非事务性语句的区别,具有一定的参考价值,可以用来参考一下。
对此感兴趣的朋友,看看idc笔记做的技术笔记!
在事务
文章正文
这篇文章主要为大家详细介绍了解析MySQL二进制日志处理事务与非事务性语句的区别,具有一定的参考价值,可以用来参考一下。
对此感兴趣的朋友,看看idc笔记做的技术笔记!
在事务性语句执行过程中,服务器将会进行额外的处理,在服务器执行时多个事务是并行执行的,为了把他们的记录在一起,需要引入事务缓存的概念。在事务完成被提交的时候一同刷新到二进制日志。对于非事务性语句的处理。遵循以下3条规则:
1)如果非事务性语句被标记为事务性,那么将被写入事务缓冲。
2)如果没有标记为事务性语句,而且事务缓存中没有,那么直接写入二进制日志。
3)如果没有标记为事务性的,但是事务缓存中有,那么写入事务缓冲。
注意如果在一个事务中有非事务性语句,那么将会利用规则2,优先将该影响非事务表语句直接写入二进制日志。
注:关于解析MySQL二进制日志处理事务与非事务性语句的区别的内容就先介绍到这里,更多相关文章的可以留意
代码注释