mysql - 锁的认识
Posted acsii
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql - 锁的认识相关的知识,希望对你有一定的参考价值。
mysql 加锁方法;(大前提条件 :必须在事务中执行)
排它锁:(作用: 当对数据表添加排它锁时,各个事务之间对这个数据表的执行顺序就会形成一个队列 , 防止读到脏数据;)
1.显示加锁:
sql语句 :select * from table where key = ... for update;
注意事项 :查询条件如果是唯一键(或主键) 并走索引时则会添加行级锁 , 否则会对整个表加锁;
2.隐式加锁:
sql语句 :update table set ... where ...;
注意事项:当mysql执行更新语句时 只有当查询条件是唯一键(或主键)并走索引时,mysql 才会自动添加行级锁;
共享锁:(作用 : 当对数据表添加共享锁时 , 数据表的数据只能读取而不能修改和删除;)
sql语句 :select * from table where .... lock in share mode;
注意事项 :查询条件如果是唯一键(或主键) 并走索引时则会添加行级锁 , 否则会对整个表加锁;
以上是关于mysql - 锁的认识的主要内容,如果未能解决你的问题,请参考以下文章