Innodb存储引擎实现了下面两种标准的行级锁
1.共享锁(S lock) 允许事务读一行数据
2.排他锁(X lock),允许事务删除或更新一条数据。同时对于修改数据的命令自带排他锁

排他锁和共享锁的兼容性

注意:x锁和s锁都是行锁,兼容是指对同一记录锁的兼容情况
image.png

Test demo01:排他锁和排他锁之间互斥

image.png
因为update语句隐士的是排他锁,所以说session2对于a=1的更新操作会在等session1事务commit之后才会进行。

Test demo02:排他锁和共享锁之间互斥(不分顺序)

image.png

Test demo03:共享锁和共享锁之间兼容(不分顺序)

image.png
意向锁:
image.png
查看锁的情况
image.png