mysql 实验论证 innodb表级锁与行级锁

innodb 的行锁是在有索引的状况下,没有索引的表是锁定全表的.session

表锁演示(无索引)spa

操做13d

操做2blog

处于等待状态....索引

再回到操做1 commit之后,操做2就出来结果了(锁定了8秒,过了6秒左右才去session1提交)。it

实验结果是:io

我在操做1的for update 操做看似只锁定ID为2的行其实锁定了全表,以致于后面操做2的对ID为1的行update 须要等待操做1锁的释放。 innodb

行锁演示(索引为ID) date

增长索引:im

 

实验结果:

此次的锁定是锁定的行,因此没有被锁定的行(ID不为2的行)能够进行update..

相关文章
相关标签/搜索