mysql 乐观锁和悲观锁
数据库中锁机制,为了保证数据一致性,使各种资源在并发时变得有序设计的规则。
MySQL各存储引擎使用了三种类型(级别)的锁定机制:表级锁定,行级锁定和页级锁定。
而乐观锁和悲观锁是通过技术手段使用的技术手段。
悲观锁 当对数据处理过程中进行锁定
乐观锁 可以理解为逻辑上的锁定
例如:
新增一个字段version,每次更改数据,version后自增
处理流程如下:
select version,value from sql where id = 1;
得到version=10,value=20;
这时更改value为30
需update sql set version = 11, value = 30 where id = 1 and version =10;
如果成功,表示修改成功。如果不成功,再次获取version的值,再次update。