Mysql的RepeatableRead默认使用MVCC来实现可重复读还是使用锁机制
Mysql的Repeatable Read默认使用MVCC(Multi-Version Concurrency Control)来实现可重复读。MVCC是一种并发控制机制,它通过在每个事务开始时创建一个事务的快照,然后在事务执行期间使用该快照来保证可重复读。
在MVCC中,每个事务都有自己的读取版本,该版本是在事务开始时确定的。当一个事务读取数据时,它只能看到在它开始之前已经提交的数据,而不能看到其他事务尚未提交的数据。这样可以保证事务读取到的数据是一致的,并且不会受到其他并发事务的影响。
使用MVCC实现可重复读的好处是可以减少锁的使用,提高并发性能。因为在MVCC中,读取操作不会阻塞写操作,也不会阻塞其他读操作。只有在写操作和写操作之间才会存在冲突,需要进行锁机制来保证数据的一致性。而在Repeatable Read隔离级别下,读操作只会使用MVCC,不会使用锁机制。
原文地址: https://www.cveoy.top/t/topic/hWr2 著作权归作者所有。请勿转载和采集!