tidb是如何实现可重复读的?

看文档有点迷糊,望大佬指点迷津。

MVCC ,通过快照读实现。只会读取到事务启动时之前已经提交的快照,以后的提交事务是不可见的。

快照读这个的作用,和mysql RR级别下事务开始时创建的逻辑视图类似,保持只看到事务开始时的数据库状态。

tidb的mvcc就是update insert delete时候都是插入一个新的行,然后事务查的是原来的行。

建议看下官方的培训视频,目前是免费的-分布式事务
TiDB 数据库核心原理与架构(101) (pingcap.com)

可以看一下这里
https://docs.pingcap.com/zh/tidb/stable/transaction-isolation-levels#tidb-事务隔离级别

MVCC机制

可以看看MVCC的解读

隔离级别啊,rr

通过使用 MVCC 机制,实现了高效的并发控制和可重复读。