事务的隔离级别

一、为什么会发生事务并发问题?

多个事务同时操作同一个数据库的相同数据

二、事务的并发问题有哪些? 

脏读:一个事务读取到另一个事务未提交的数据

不可重复读:同一个事物,多次读取到的数据不一致

幻读:一个事物读取数据时,另外一个事物更新,导致第一个事物读取到了没有更新的事务

 三、如何避免事务的并发问题?

通过设置事务的隔离级别

1、READ UNCOMMITTED 读未提交(可能会造成脏读、不可重复度、幻读)

2、READ COMMITTED 读已提交(可以避免脏读)

3、REPEATABLE READ 可以避免脏读、不可重复读和一部分幻读

4、SERIALIZABLE 可以避免脏读、不可重复度、幻读

MySQL InnoDB 存储引擎的默认支持的隔离级别是 REPEATABLE-READ(可重读)

你可能感兴趣的:(java,数据库,mysql)