20 mysql 隔离性的底层原理

孟佳

关注

阅读 54

2023-12-27

隔离性的原理:

1.0

隔离性是通过锁机制实现的。当一个事务修改数据时,需要先获取锁。其它事务要修改数据,必须等待之前的事务提交或者回滚,然后释放锁操作之后。

myisam只支持表锁,innodb支持表锁和行锁。因为表锁比较影响性能,所以通常情况下,使用行锁就可以了。

2.0

隔离性的另外一个方面,就是一个事务修改数据,影响另外一个事务读取数据。这是通过 mvvc 模型实现的。

mvvc模型,就是每行数据有个隐藏的数据列,其中包含事务id和指向undo log的指针,从而形成数据版本链条。readview则指定了读取哪个数据版本。

精彩评论(0)

0 0 举报