关于redo log,undo log,bin log

牛友们,mysql的redo log,undo log,bin log作用,存储格式,以及是如何恢复的#悬赏##MySQL#
全部评论
1.binlog是逻辑日志,属于存储引擎层,当事务提交前,会在binlog中写入修改数据库的指令.    binlog可以用来主从复制. 2.redo log是物理日志,属于innodb引擎,会记录事务提交时,物理页的变化.恢复速度比binlog快. 3.undo log是逻辑日志,事务提交时,记录操作的反操作(insert->delete,update->update,delete->insert),可以用于回滚。   undo log 和 mvcc机制可以实现 innodb 引擎在rr下 的快照读. 快照读.   1.若rowVersion<min(readview),说明该行未被修改,直接返回.   2.若rowVersion>max(readview),说明该行被后面开启的事务修改并提交,从undolog中找到老版本.   3.若min(readview)<=rowVersion<=max(rowVersion),说明同一批的事务修改该行并提交,从undolog中找到老版本(同2).
2 回复
分享
发布于 2020-02-23 21:28
mysql的不是很懂,磁盘的redo log,undo log,就是双重保险,redo log->如果写入过程中,断电,日志没有数据,数据就没有写入,undo log->数据写入中,断电,没有在undo log中记录写入完成,那么就是写入失败
1 回复
分享
发布于 2020-02-24 11:52
滴滴
校招火热招聘中
官网直投
网上的都没看懂
点赞 回复
分享
发布于 2020-02-23 13:01

相关推荐

1 3 评论
分享
牛客网
牛客企业服务