类似场景类比
锁的本质是为了解决并发问题,但是数据库分了各种各样的锁。每个锁都有自己的使用场景。就拿洗手间为例子,每个进入洗手间的人都是事务,在洗手间洗手、化妆以及上厕所,上厕所是一个隐秘的事情,别人只能在外面排队一个一个来,而洗手化妆则可以允许他人进入。
共享锁
共享锁,又称读锁、S锁。上厕所就相当于修改操作。当事务给行加了共享锁,此时行只能进行读操作,而不能进行写操作。别的事务也只能给其加共享锁,不能加排他锁。
排他锁
排他锁,又称写锁、X锁。当加了排他锁之后,就相当于把洗手间的门关上了,别人不能进去洗手、化妆之类的。也就是说不能进行写操作以及读操作,其他事务不能给其再加锁了。