1.将数据库设置为读未提交

set global transaction isolation level read uncommitted;

【数据库之美】脏读演示以及解决方案_编程

【数据库之美】脏读演示以及解决方案_编程_02

【数据库之美】脏读演示以及解决方案_编程_03

【数据库之美】脏读演示以及解决方案_编程_04
【数据库之美】脏读演示以及解决方案_编程_05

在事务隔离级别是读未提交,出现了A读取了B未提交的数据。

2、解决的方案: 将隔离级别提升到读已提交

set global transaction isolation level read committed;//设置读已提交

【数据库之美】脏读演示以及解决方案_编程_06

【数据库之美】脏读演示以及解决方案_编程_07

【数据库之美】脏读演示以及解决方案_编程_08
【数据库之美】脏读演示以及解决方案_编程_09
【数据库之美】脏读演示以及解决方案_编程_10