【Mysql】脏读、不可重复读、幻读

脏读(未提交的update事务影响【事务一】前后读取的数据)

 

  事务一和事务二并发执行:

1)事务一第一次查询数据

2)事务二修改数据【未提交

3)事务一再次读的时候发现是修改后的数据

4)结论:导致脏读

 不可重复读(已提交update/delete事务影响【事务一】前后读取的数据):

 

 事务一和事务二并发执行:

1)事务一第一次查询数据

2)事务二修改数据【已经提交

3)事务一再次读的时候发现是修改后的数据

4)结论:不可重复读

幻读(已提交insert事务影响【事务一】前后读取的数据):

 

1)事务一第一次统计数据 count=3

2)事务二提交insert数据【已经提交

3)事务一再次统计的时候发现是count=4

4)结论:幻读,前后多次读取,数据总量不一致

 总结:脏读、不可重复读、幻读,就是事务一在多次读取或者统计数据的时候,受其它事务的干扰①脏读:受未提交update事务的影响②受已提交update事务的干扰③受已提交insert语句的影响

原文地址:https://www.cnblogs.com/songjn/p/14221868.html