在上篇中,我们介绍了MySQL中的全局锁和表锁. 今天,我们专注于介绍一下行锁,这个在日常开发和面试中常常困扰我们的问题. 1.行锁基础 由于全局锁和表锁对增删改查的性能都会有较大影响,所以,我们自然会想到, 只需要对有修改的行加锁就行了,这就是行锁. 在事务中,事务1更新了一行主键为1的数据行,那么,在这个事务释放锁之前,事务2是不能操作的. 另外,有一个很多人容易混淆的概念,就是行锁什么时候释放? 搞清这个事情,需要了解什么叫作 两阶段锁. 什么是两阶段锁呢?举个例子你就明白了. 这里事务2…