mysql事务日志和MVCC

1.mysql的redolog日志和undolog日志的作用?

A redolog主要作用是保证提交commit的数据的成功

将修改的数据在正式提交commit前进行记录

记录的方式,将日志从内存刷新给文件缓存,文件缓存什么时候落盘由操作系统自行决定(2)

redolog日志的主要作用保证commit行为的安全性

B undolog主要作用是保证回滚rolleback的数据的成功?

将修改的数据的旧值在修改时进行记录

记录方式,每次修改都保存旧值,旧值之间会形成一个undolog链

Undolog日志的主要作用保证rolleback回滚操作的安全性

2 .在解决多线程隔离问题上mvcc机制主要原理?

A Mvcc多版本并发控制机制

对mysql数据的写并发的控制,给要到具体什么内容的控制,Readview快照读

B 工作过程

当一个事务需要读取数据的时候,会产生一个Readview

Readview中主要记录的字段:

trx_id当前生成Readview的这个事务的id

M_ids访问当前数据资源的所有未提交的事务集合,活跃事务id

Min_trx_id记录活跃事务id集合中的最小值

Max_trx_id数据库引擎即将分配给下一个事务的id

以上四个值和具体的当前(当前行)数据事务id进行比较,根据它们的大小干系对情况判断

最终的目的是未来保证当前的readview这个事务在读取数据时的可重复读的隔离级别(RR)

1.mysql索引算法

2. mysq索引优化,多表优化

3.事务特性和隔离级别的底层原理,锁和mvcc,redolog和undolog

4. mysql分布式操作

A 读写分离

Mysql主从复制读写分离

Sharding-jdbc

B 数据分片(sharding)

Sharding-jdbc+多数据库

库分片和表分片

相关推荐

  1. mysql事务日志MVCC

    2024-01-22 01:42:01       55 阅读
  2. MySQL事务隔离级别及MVCC详解

    2024-01-22 01:42:01       50 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-01-22 01:42:01       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-01-22 01:42:01       106 阅读
  3. 在Django里面运行非项目文件

    2024-01-22 01:42:01       87 阅读
  4. Python语言-面向对象

    2024-01-22 01:42:01       96 阅读

热门阅读

  1. 代码随想录算法训练营第二十四天| 77. 组合

    2024-01-22 01:42:01       52 阅读
  2. Code Review是什么?怎么进行代码审查?

    2024-01-22 01:42:01       52 阅读
  3. 【小白向】MMDeploy安装部署|暗坑标注版

    2024-01-22 01:42:01       65 阅读
  4. 第五章:大模型的数据

    2024-01-22 01:42:01       61 阅读
  5. CloudCompare 二次开发(26)——RANSAC分割多个平面

    2024-01-22 01:42:01       60 阅读
  6. QT基础篇(12)QT5多线程

    2024-01-22 01:42:01       46 阅读
  7. ElasticSearch使用篇

    2024-01-22 01:42:01       49 阅读
  8. AcWing 787. 归并排序(模板题详解)

    2024-01-22 01:42:01       58 阅读