在数据库中,事务是指一组逻辑操做单元,使数据从一种状态变换到另外一种状态。数据库
为确保数据库中数据的一致性,事务的操做应该是流畅完成的,中间不能失败,一旦有操做失败,那么回滚到开始事务的状态。并发
每次begin开启一个事务后,选择commit和rollback结束本次事务。要从新begin开启一个新的事务。spa
存在五种问题:脏读、不可重复读、幻读、第一类丢失更新、第二类丢失更新
隔离级别:不一样的隔离级别能够处理不一样的并发问题
默认的隔离级别为:repreatable read
MySQL默认状况下不会出现幻读和第一类丢失更新3d
MySQL使用锁机制来解决第二类丢失更新
悲观锁:版本控制
select ......for update;
乐观锁:使用版本控制code