Mysql MVVC

Mysql MVVC

MVVC就是用管理快照实现多版本并发控制吗,保证了数据库的隔离性。

读已提交 如何保证数据的隔离型

当我们开始一个事物的时候我们就会创建一个快照, 每一个快照都有一个时间戳作为标记,如果我们已经修改了数据但是还没有提交那么快照的状态就是已修改未提交,如果已经修改提交状态就是已修改已提交,然后当有事物查询的时候就会去找最新版本的快照通过时间戳判断。

可重复读

首先事物开启的时候首先会开启一个私有快照,然后事物提交了,再把修改的操作同步到最新的共有快照。

快照清理

当隔离界别是可重复度repeatable read那么就事物提交了会清理自己的私有快照。

mysql会定期清理我们的old 快照,具体多长时间清理一次? 这个mysql会通过我们的服务器性能来判断

相关推荐
周小董5 分钟前
[1369]Windows上安装PostgreSQL
数据库·windows·postgresql
一只积极向上的小咸鱼2 小时前
第一性原理思考:从拆解问题到用实验检验答案
数据库
这个DBA有点耶3 小时前
时序数据库InfluxDB高基数问题深度拆解:内存索引膨胀机制与OOM完整链路
数据库·架构·dba
SL_staff3 小时前
运维救火实录:钉钉考勤API变更引发工资计算异常,我们用JVS-Logic可视化逻辑引擎实现分钟级热修复
java·mysql·全栈
加油yx3 小时前
MySQL数据类型
数据库·mysql
蓝胖的四次元口袋3 小时前
Redis知识梳理(1)
数据库·redis·缓存
夜雪一千3 小时前
MySQL 数据加密实战:从传输、存储到字段级加密,分清场景不踩坑
数据库·mysql
wefg14 小时前
【Redis】C++ 自定义客户端
数据库·redis·缓存
这个DBA有点耶4 小时前
为什么UPDATE比SELECT危险得多?锁范围等于扫描行数
数据库·架构·代码规范
天国梦5 小时前
国密门禁品牌怎么选?2026年最新3个避坑要点
运维·服务器·数据库·python