事务隔离级别
1、读未提交
定义:这是最低的隔离级别,一个事务可以读取另一个未提交事务的数据。
优点:并发性能最高,因为它几乎不进行任何隔离。
缺点:
2. 读已提交(Read Committed)
定义:一个事务只能读取另一个已经提交事务的数据。
优点:避免了脏读问题,提高了数据的一致性。
缺点:会产生不可重复读问题,即在同一个事务中,多次读取同一数据可能会得到不同的结果,因为在两次读取之间可能有其他事务对该数据进行了修改并提交。
3. 可重复读(Repeatable Read)
定义:在同一个事务中,多次读取同一数据的结果是相同的,即使其他事务对该数据进行了修改并提交。
优点:避免了脏读和不可重复读问题,保证了在同一个事务中数据的一致性。
缺点:会产生幻读问题,即在同一个事务中,当执行相同的查询语句时,由于其他事务插入或删除了符合查询条件的记录,导致前后两次查询结果的记录数不同。
4. 串行化(Serializable)
定义:最高的隔离级别,所有事务依次串行执行,一个事务执行时会阻塞其他事务的执行,保证了事务之间的完全隔离。
优点:避免了脏读、不可重复读和幻读问题,提供了最高的数据一致性。
缺点:并发性能最低,因为事务需要依次执行,会导致大量的锁等待,降低了系统的吞吐量。

浙公网安备 33010602011771号