![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据库锁机制
袁非非
目前大三学生,软件工程专业,研究Java
展开
-
InnoDB的MVCC
什么是MVCCMVCC即Multi-Version Concurrency Control,中文翻译过来叫多版本并发控制。MVCC解决的问题MySQl默认的存储引擎是InnoDB,默认的事务隔离级别是REPEATABLE RED(可重复度),这种事务隔离级别要求2个事务之间不能影响,而且还能支持并发,悲观锁无法达到这个性能要求。所以该隔离级别采用的是乐观锁的形式实现的,乐观锁采用的具体实现方...原创 2019-10-16 14:19:30 · 288 阅读 · 0 评论 -
悲观锁和乐观锁
乐观锁和悲观锁:悲观锁:一段执行逻辑加上悲观锁,不同线程同时执行时,只能有一个线程执行,其他的线程在入口处等待,直到锁被释放。Java中synchronized和ReentrantLock等独占锁就是悲观锁思想的实现。乐观锁:一段执行逻辑加上乐观锁,不同线程同时执行时,可以同时进入执行,在最后更新数据的时候要检查这些数据是否被其他线程修改了(版本和执行初是否相同),没有修改则进行更新,否则...原创 2019-10-10 21:22:54 · 118 阅读 · 0 评论