隔离级别:
read Uncommited(未提交读):事务还没提交,就可以读
read Commited(提交读):事务提交了才能读
repeatable Read(可重复读):mysql默认的隔离级别,必须提交了才能读,读取的数据是锁定的
serialiazable(序列化读):mysql最高隔离级别,并发性能较弱
扩展:
脏读:事务没提交就可以读到数据,隔离级别“未提交读”会产生脏读
不可重复读:再重复读一次,数据与上次读到的数据不一样;隔离级别“可重复读”可以解决数据的脏读和不可重复读
幻读:当查询一定条件的数据,开始查询后,别人对数据增加或者删除某些数据,再读取时数据不一致
事务特性:
原子性:事务包含的内容操作要么一起执行,要么都不执行。
一致性:事务执行前和执行之后数据库必须处于一致的状态;这比较难理解,打个比方:A往B转账10块钱,逻辑上是A账户-10,B账户+10
隔离性:事务之间都是隔离的
持久性:当系统发生故障时,确保已提交事务的数据不能丢失