https://blog.csdn.net/qq_40174198/article/details/111835482

锁概述

锁是计算机协调多个进程或线程并发访问某一资源的机制,应该都不陌生。​但在这之前我们先来看看并发控制,理清MVCC多版本并发控制和锁的关系,这也是之前我很迷惑的一个点

并发控制技术

在数据库中,数据可以允许多个用户同时访问,因此在并发场景下需要确保数据的一致性,可以简单梳理一下,并发场景有三种:

从宽泛意义上讲,目前有三种并发控制技术:

对并发控制有了一定的了解,但需要注意

MySQL中实现多版本两阶段锁协议,也就是MVCC+2PL(2PL是悲观并发实现的一种算法,锁只有在commit或rollback的时候释放)

为什么需要锁

再总结一下: