数据库的疑问

来源:1-5 EXPLAIN详解(使用、可视化、扩展与性能计算公式)

慕沐6666697

2020-10-12 13:32:24

老师

我学习了 锁 mvcc 隔离级别, 但是他们之间的关系 和相互作用  我不清楚,麻烦给解释下吧?

谢谢

写回答

1回答

大目

2020-10-12

已在QQ沟通过。解答大致如下:

锁比较好理解
mvcc,顾名思义,多版本并发控制,一条数据可以有多个版本,可以代替行锁,提升性能。
而mvcc又和隔离级别有关系。
由于mvcc是事务提交后,在数据库内部针对某条数据,或者某些数据,操作其隐藏的版本字段。因此,比如读未提交这个级别,就没法用上mvcc,因为不管是创建版本,还是删除版本,都要在事务提交后才会产生,而读未提交,表示能读到其他事务没有提交之前的数据。

总的来说,三者都是数据库并发控制的手段,三者之间存在一定的配合关系

0

Java架构师-技术专家

千万级电商项目从0到100全过程,覆盖Java程序员不同成长阶段的核心问题与解决方案

2672 学习 · 5839 问题

查看课程