您现在的位置是:课程教程文章
mysql中undo log的两种类型
2023-12-13 23:27课程教程文章 人已围观
-
PHP+MySQL+Bootstrap 新手入门到项目实战课程
PHP+MySQL+Bootstrap 新手入门到项目实战课程课程简介 本次PHP网络免费公开课内容PHP的基本语法、第三方软件ueditor/畅言的使... -
PHP+Mysql网上购物服装商城毕业设计 毕设
PHP+Mysql网上购物服装商城毕业设计 毕设包含界面和开发讲解;主要讲解移动商城首页、商城分类、商城购物车、产品分... -
基于php和mysql的校园新闻信息发布管理系
基于php和mysql的校园新闻信息发布管理系开发语言:PHP7 数据库:mysql8.0 开发工具:phpstorm 详细见截图或者视频演示 黄老... -
【性能调优系列】深入理解mysql锁与事务
【性能调优系列】深入理解mysql锁与事务我们图灵学院晚上8点有邀请到前美团、阿里、京东、国美、谷歌等大牛在腾讯...
根据行为的不同,undo log分为两种:insert undo log和update undo log
1、insert undo log,是在insert操作中产生的。insert操作的记录只对事务本身可见。
对于其它事务此记录是不可见的,所以 insert undo log 可以在事务提交后直接删除而不需要进行purge操作。
2、update undo log是update或delete操作中产生。
因为会对已经存在的记录产生影响,为了提供 MVCC机制,因此 update undo log 不能在事务提交时就进行删除,而是将事务提交时放到入 history list 上,等待 purge 线程进行最后的删除操作
为了更好的支持并发,InnoDB的多版本一致性读是采用了基于回滚段的的方式。另外,对于更新和删除操作,InnoDB并不是真正的删除原来的记录,而是设置记录的delete mark为1。因此为了解决数据Page和Undo Log膨胀的问题,需要引入purge机制进行回收
为了保证事务并发操作时,在写各自的undo log时不产生冲突,InnoDB采用回滚段的方式来维护undo log的并发写入和持久化。回滚段实际上是一种 Undo 文件组织方式
以上就是mysql中undo log的两种类型,希望对大家有所帮助。更多mysql学习指路:MySQL
推荐操作系统:windows7系统、mysql5.8、DELL G3电脑
课程教程:mysql中undo log的两种类型上一篇:c语言中如何计算数组长度
下一篇:没有了