Mysql MVVC

Mysql MVVC

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

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

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

可重复读

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

快照清理

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

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

相关推荐
SkyWalking中文站12 小时前
BanyanDB 0.11.0:新特性与升级指南
数据库
₍˄·͈༝·͈˄*₎◞ ̑̑码13 小时前
MyBatis操作数据库
数据库·mybatis
刃神太酷啦15 小时前
Redis 进阶核心:持久化 (RDB/AOF)、事务与主从复制全解析----《Hello Redis!》(5)
linux·c语言·数据库·c++·redis·缓存·bootstrap
丁丁点灯o15 小时前
Oracle中使用外键的场景及不适用外键的情况
数据库·oracle
天天进步201515 小时前
Pixelle-Video 源码解析 #18:声音克隆功能:参考音频如何影响解说效果?
数据库·音视频
不懂的浪漫16 小时前
ToDesk 连接 Linux 后分辨率过低的解决方法
linux·运维·数据库
布莱克60516 小时前
Redis 详解:从核心数据结构到高可用架构
数据库
冰暮流星17 小时前
mysql之左外连接与右外连接
数据库·sql
jyOverQ17 小时前
MySQL 联合索引怎么用?最左匹配原则到底是什么意思?
数据库·mysql
没文化的阿浩17 小时前
【MySQL】用户管理
android·mysql·adb