ordinaryBlog 2022-01-15 02:31:34 阅读数:331
redo log为InnoDB特有的日志
用于记录事务操作的变化,记录的是数据修改之后的值。在MySQL宕机时,InnoDB通过redo log恢复数据,保证数据的完整性。即 保证即使数据库发生异常重启,之前提交的记录都不会丢失,这个能力称为crash-safe
在一条记录更新的时候,InnoDB引擎会先把记录写入redo log中,并更新内存。后续在系统较为空闲时,再将该操作写入磁盘中 (先写日志,再写磁盘)
(图片来自极客时间)redo log是循环写入的,write pos和check point之间可用来记录新的操作。check point之后是当前要擦除的操作。
binlog是属于MySQL Server层的,又称归档日志,属于逻辑日志,记录的是语句的原始逻辑,是以二进制形式存储的。
update T set c=c+1 where ID=2;
(图片来自极客时间)
通过两阶段提交 保证了数据的一致性
版权声明:本文为[ordinaryBlog]所创,转载请带上原文链接,感谢。 https://blog.csdn.net/kang2411212/article/details/120604767