关于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

相关推荐

爱吃肉的伊登在写日记:好棒,27届简历能做成这个样子,但是第一个项目感觉cover住难度还是不小的,特别是二面的时候肯定要对分布式系统设计这一块儿有高出正常面试者的水平才行
点赞 评论 收藏
分享
评论
1
3
分享

创作者周榜

更多
牛客网
牛客企业服务