MySQL学习笔记:乐观锁VS悲观锁/八股总结乐观锁和悲观锁是一种思想:两种并发控制思想。本质在对于冲突的预期态度不同。 悲观锁假设所有冲突一定会发生,所有操作数据前先把锁拿到,别的事务就必须等锁释放 MySQL中用SELECT…FOR UPDATE拿排他锁,用SELECT…LOCK IN SHARE MODE拿共享锁。拿到锁之后别的事务都会进行等等。直到事务提交或回滚才释放。 乐观锁假设冲突很少发生,默认不加锁,等到正真更新时再检查数据有没有被别人改过。通常用一个version字段来实现,读的时候把version一起读出来,更新的时候在WHERE条