当前位置:网站首页>绝对最直白的MySQL MVCC机制总结,免费拿走
绝对最直白的MySQL MVCC机制总结,免费拿走
2022-08-02 15:01:00 【InfoQ】
- 在小ySQL InnoDB存储擎下RC(读已提交,RR(可重复读)基于MVCC(多版本并发控制)进行并发事务控制
- MVCC是基于”数据版本”对并发事务进行访问。
举例子引题

UNDO_LOG版本链
undolog就是undolog日志。
TRX_ID 是 此次修改的事务idDB_ROLL_PTR是指向上一个修改的版本指针- UNDO LOG版本链不是立即删除,
- MySQL确保版本链数据不再被“引用”后再进行删除。
ReadView是啥
- 快照读就是最普通的Selecti查询SQL语句
- 当前读指代执行下列语句时进行数据读取的方式,如Insert、.Update、Delete、Select...for update、Select...lock in share mode
- mids:当前活跃的事务编号集合
- min_trx_id:最小活跃事务编号
- max_trx_id:预分配事务编号,当前最大事务编号+1
- creator trx id:ReadView创建者的事务编号
RC与ReadView的关系
- RC与ReadView
- 拿第一次的来分析,结合右边的规则和ReadView对版本链进行从上到下比对,选择合适的版本取出对应的值即可。
- 拿第二次select的来分析,结合右边的规则和ReadView对版本链进行从上到下比对,选择合适的版本取出对应的值即可。
RC与ReadView的关系

- 连续多次快照读,ReadView会产生复用,没有幻读问题
- 特例:当两次快照读之间存在当前读,ReadView会重新生成,导致产生幻读
总结
边栏推荐
猜你喜欢

2022 Low Voltage Electrician Exam Questions and Online Mock Exam

es6 循环,并终止循环

“绿色低碳+数字孪生“双轮驱动,解码油气管道站升级难点 | 图扑软件

SSRF(服务器端请求伪造)

Servlet运行原理_API详解_请求响应构造进阶之路(Servlet_2)

祝蔡徐坤生日快乐!

虚拟现实处理器(SXR2130P)ISO7640FMDW(数字隔离器)说明

看我如何用多线程,帮助运营小姐姐解决数据校对系统变慢!

esp32之arduino配置下载提速

2022 Security Officer-A Certificate Exam Questions and Mock Exam
随机推荐
【无标题】
Why do I no longer recommend the enumeration strategy pattern?
Qt | QWidget 的一些总结
Sql文件导入数据库-保姆级教程
TMS320C6678开发板( DSP+Zynq )RTOS综合功能案例,嵌入式必看!
Servlet运行原理_API详解_请求响应构造进阶之路(Servlet_2)
setTimeout与setInterval的区别
软件成分分析:华为云重磅发布开源软件治理服务
MySQL 的几种碎片整理方案总结(解决delete大量数据后空间不释放的问题)
Typora永久使用,彻底解决This beta version of Typora is expired.
系统存储的基本管理--挂载,分区,用户配额
面试了个阿里P7大佬,他让我见识到什么才是“精通高并发与调优”
【知乎高赞】为什么很多资质平庸的女人嫁得很好,很多优质女性却成了剩女?
Qt | 设置部件大小 sizeHint、minimumSizeHint、sizePolicy、stretch factor
Eight big software attack overview of supply chain
【go-zero】go-zero 框架踩坑指南 Q&A (持续更新中)
H5中的拖放(Drag 和 Drop)
Linux系统中mysql数据库的基本管理
做好私域流量!全民拼购就可以了。
如何用JDBC操作Mysql



