MySQL数据库锁理论( 二 )


结果是被阻塞 。
4、更新库中其他表
update test2 set name = 'a2' where id = '2';
当前会话中:

MySQL数据库锁理论

文章插图
 
 
此时不可以更新其他表 。
新的会话中:
MySQL数据库锁理论

文章插图
 
更新其他表时候没有问题 。
以上是对表分别加读锁和写锁,然后进行的一些操作对比,重要的关注在其他会话中对被锁表的读写请求 。
对表加读锁,不会阻塞其他进行对同一表的读请求,但会阻塞对同一表的写请求 。只有当读锁释放后,才会执行其他执行进行的写操作 。
对表加写锁,会阻塞其他进程对同一表的读和写的请求,只有当写锁释放后,才会执行其它进程的读写操作 。




推荐阅读