Mysql MVVC

Mysql MVVC

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

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

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

可重复读

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

快照清理

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

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

相关推荐
angushine3 小时前
TDSQL创建分区表
运维·mysql
tb_first3 小时前
万字超详细苍穹外卖学习笔记5
java·数据库·spring boot·笔记·学习·spring
星沙丘秋3 小时前
Kettle9入门、使用经验与5个问题
数据库·sql·etl
sg_knight3 小时前
如何通过 SQL*Plus 连接 Oracle 数据库(使用 Instant Client)
运维·数据库·sql·oracle·database·关系型数据库·sql puls
Guheyunyi3 小时前
节能降耗系统从“经验直觉”推向“精准智控”
大数据·数据库·人工智能·科技·信息可视化
jiunian_cn4 小时前
【Redis】zset数据类型相关指令
数据库·redis·缓存
betazhou4 小时前
MySQL相关性能查询语句
android·数据库·mysql
jiunian_cn4 小时前
【Redis】set数据类型相关指令
数据库·redis·缓存
松涛和鸣4 小时前
DAY69 Practical Guide to Linux Character Device Drivers
linux·服务器·arm开发·数据库·单片机·嵌入式硬件
咩咩不吃草4 小时前
Linux环境下MySQL的安装与使用与Navicat
linux·运维·数据库·mysql·navicat