面试问烂的MySQL四种隔离级别,看完吊打面试官!
B:回滚事宜 A:再次读数据,发明数据变回初始状态 颠末上面的尝试可以得出结论,事宜B更新了一笔记录,可是没有提交,此事势务A可以查询出未提交记录。造成脏读征象。未提交读是最低的断绝级别。 将客户端A的事宜断绝级别配置为read committed(已提交读) A:启动事宜,此时数据为初始状态 B:启动事宜,更新数据,但不提交 A:再次读数据,发明数据未被修改 B:提交事宜 A:再次读取数据,发明数据已产生变革,声名B提交的修改被事宜中的A读到了,这就是所谓的“不行一再读” 颠末上面的尝试可以得出结论,已提交读断绝级别办理了脏读的题目,可是呈现了不行一再读的题目,即事宜A在两次查询的数据纷歧致,由于在两次查询之间事宜B更新了一条数据。已提交读只应承读取已提交的记录,但不要求可一再读。 将A的断绝级别配置为repeatable read(可一再读) A:启动事宜,此时数据为初始状态 B:启动事宜,更新数据,但不提交 A:再次读取数据,发明数据未被修改 B:提交事宜 A:再次读取数据,发明数据依然未产生变革,这声名这次可以一再读了 B:插入一条新的数据,并提交 A:再次读取数据,发明数据依然未产生变革,固然可以一再读了,可是却发明读的不是最新数据,这就是所谓的“幻读” A:提交本次事宜,再次读取数据,发明读取正常了 (编辑:湖南网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |