数据库事务隔离级别
√ 表示可能出现 x表示不会出现
隔离级别 脏读 不可重复读 幻读 读未提交 √ √ √ 读已提交 × √ √ 可重复读 × × √ 串行化 × × × 脏读:即A事务读取到B事务未提交的数据,一旦B事务进行回滚,A事务所读取的数据就是脏数据。
不可重复读:即A事务执行查询时,B事务在对数据执行修改操作,B事务提交之后,会造成A事务再次查询不一致。
幻读:即A事务执行查询时,B事务对数据执行增加或删除操作,B事务提交之后,A事务再次进行操作,会发现数据存在多了或者少了的现象。
串行化:是最高的事务隔离级别,同时代价也花费最高,性能很低,一般很少使用,在该级别下,事务顺序执行,不仅可以避免脏读、不可重复读,还避免了幻像读。
mysql默认的事务隔离级别为可重复读。