我知道在提交之前执行dml sql时,innodb会将结果写入innodb页缓存,该缓存可以刷新到数据页并写入撤销日志文件;但同时,mysql崩溃和重新启动时,mysql则如何回滚哪个事务?
发布于 2018-10-07 12:01:35
这都是写日记的事。写分三个阶段执行。首先,所有更改都与旧数据一起写入,然后将所有引用重新链接到新值,如果这两个阶段被传递,则整个事务被标记为commited,所有旧链接被清除,日志条目被删除。如果启动引擎在日记中发现了一些未实现的事务,那么所有相关的更改都会回滚到初始状态。
https://dba.stackexchange.com/questions/219465
复制相似问题