上传者: weixin_38645266
|
上传时间:2023/3/19 0:34:37
|
文件大小:161KB
|
文件类型:PDF
详解MySQL两次写的设计及实现
两次写(InnoDBDoubleWrite)是Innodb中很独特的一个功能点。
因为Innodb中的日志是逻辑的,所谓逻辑就是比如插入一条记录时,它可能会在某一个页面(这条记录最终被插入的位置)的多个偏移位置写入某个长度的值,例如页头的记录数、槽数、页尾槽数据、页中的记录值等。
这些本是一些物理操作,而Innodb为了节省日志量及其它缘由,设计为逻辑处理的方式,即在一个页面上插入一条记录时,对应的日志内容包括表空间号、页面号、将被记录的各个列的值等内容,在真正物理插入的时候,才会将日志逻辑操作转换为前面的物理操作。
先有逻辑日志,再有物理操作,但是这样需要有一个前提,就是物理操作的页面是正确的。
如
本软件ID:15448987