ACID
事务的4个特性:ACID,分别是:
A: Atommicity 原子性
C:Consistency 一致性
I:Isonlation 隔离性
D:Durability 持久性
Mysql数据库隔离级别
事务的隔离性就是事务的隔离级别,Mysql数据库隔离级别划分为4个级别:
read uncommited(读未提交):一个事务还没提交的时候,他的修改能被其他事务看见。可出现脏读问题。
read comminted (读提交):一个事务只有提交后才能被看到。可出现不重复读问题。
repeatable read(重复读):一个事务开始后读到任意时刻数据都一致。可出现幻读问题。
serializeable(序列化):事务有序地进行,按顺序进行。性能最差。
各种问题解释
脏读:读取到其他事务的数据,如果其他数据事务进行回滚,将出现脏数据。
不可重复读:在一个事务里,用一样的条件重复去读取数据,出现前后不一样的情况,既不可重复读一样的数据。
幻读:第二次读到了第一次不存在的数据,跟出现幻觉一样。幻读实际上很难理解,一般幻读专门指新生成的数据,因为就算是行锁,也无法对新增加的行进行枷锁。参考 https://www.jianshu.com/p/c53c8ab650b5 这里讲的还不错。