MySQL 加锁控制并发的方法
前言锁总体可以分为乐观锁和悲观锁,简单说,乐观锁用版本号控制,悲观锁用锁控制。下面是待会要用来测试的数据查询结果如下:一、乐观锁核心原理是增加一个version的字段来控制。上面这两个sql最终都会更新成功,且以最后更新结果为主。解决办法是添加一个version字段添加version字段解决办法是添加一个version字段,每个更新时where条件都加上它,并且也更新它这次变成了只会更新成功一次,谁先抢到这条记录以谁为主,因为当前一个进程更新成功后版本号已经变化了,第二个进程找不到这条记录了。发生了等待,说明已经被锁定了。
用户评论