MySQL的锁定读SELECT ... FOR UPDATE和SELECT ... LOCK IN SHARE MODE
2012-06-07 11:34
549 查看
SELECT ... FOR UPDATE读最新的可见数据,在每个它读取的行设置独占锁定。
SELECT ... LOCK IN SHARE MODE以共享模式读取数据。共享模式执行一个读意味着我们读最新的可用数
据,并在我们读的行设置一个共享锁定。共享模式锁防止其它人更新或删除我们已读的行。同时,如果最
新的数据属于其它客户端尚未提交的事务,我们等着知道那个事务被提交。
以我的理解,简单点儿说就是SELECT ... FOR UPDATE比SELECT ... LOCK IN SHARE MODE更苛刻。对于
SELECT ... FOR UPDATE锁定的记录,其它事务既不能读也不能修改、删除;而对于SELECT ... LOCK IN
SHARE MODE锁定的记录,其它事务不能修改、删除但是可以读。
SELECT ... LOCK IN SHARE MODE以共享模式读取数据。共享模式执行一个读意味着我们读最新的可用数
据,并在我们读的行设置一个共享锁定。共享模式锁防止其它人更新或删除我们已读的行。同时,如果最
新的数据属于其它客户端尚未提交的事务,我们等着知道那个事务被提交。
以我的理解,简单点儿说就是SELECT ... FOR UPDATE比SELECT ... LOCK IN SHARE MODE更苛刻。对于
SELECT ... FOR UPDATE锁定的记录,其它事务既不能读也不能修改、删除;而对于SELECT ... LOCK IN
SHARE MODE锁定的记录,其它事务不能修改、删除但是可以读。
相关文章推荐
- Mysql加锁过程详解(4)-select for update/lock in share mode 对事务并发性影响
- mysql 加锁读Locking Reads (SELECT ... FOR UPDATE and SELECT ... LOCK IN SHARE MODE)
- MySQL中的行级锁SELECT FOR UPDATE 和LOCK IN SHARE MODE 区别
- MySQL中的行级锁SELECT FOR UPDATE 和LOCK IN SHARE MODE 区别
- mysql lock in share mode 和 select for update
- Mysql加锁过程详解(4)-select for update/lock in share mode 对事务并发性影响
- MySQL行级锁SELECT FOR UPDATE 和LOCK IN SHARE MODE区别
- 14.2.2.3 Locking Reads (SELECT ... FOR UPDATE and SELECT ... LOCK IN SHARE MODE) 锁定读(SELECT ... FOR
- [MySQL] 行级锁SELECT ... LOCK IN SHARE MODE 和 SELECT ... FOR UPDATE
- 【Mysql行锁】SELECT...FOR UPDATE和SELECT ...LOCK IN SHARE MODE
- mysql lock in share mode 和 select for update
- MySQL中的行级锁SELECT FOR UPDATE 和LOCK IN SHARE MODE 区别
- MySQL中的行级锁SELECT FOR UPDATE 和LOCK IN SHARE MODE 区别
- mysql 并行写 for update lock in share mode 总结
- select ... for update& lock in share mode加锁情况
- SELECT LOCK IN SHARE MODE and FOR UPDATE
- SELECT LOCK IN SHARE MODE and FOR UPDATE
- SELECT ... LOCK IN SHARE MODE和SELECT ... FOR UPDATE locks在RR模式下可以看到最新的记录
- SELECT ... LOCK IN SHARE MODE和SELECT ... FOR UPDATE locks在RR模式下可以看到最新的记录
- 深入理解SELECT ... LOCK IN SHARE MODE和SELECT ... FOR UPDATE