快速明白MySQL事务的隔离级别,并发事务导致的问题

快速明白MySQL事务的隔离级别,并发事务导致的问题,第1张

快速明白MySQL事务隔离级别,并发事务导致的问题

快速明白MySQL事务的隔离级别,并发事务导致的问题
  • 事务的四个隔离级别
    • 隔离作用
    • 隔离级别比较
    • 并发事务导致的问题
    • 以下表格表示每个级别可能发生的问题

事务的四个隔离级别

读未提交、读已提交、可重复读和串行化

隔离作用

让事务之间互相隔离、互不影响,保证事务的一致性。

隔离级别比较

可串行化>可重复读>读已提交>读未提交

隔离对性能的影响:可串行化>可重复读>读已提交>读未提交
隔离级别越高,所需要消耗的MySQL性能越大(如事务并发严重性),为了平衡二者,一般建议设置的隔离级别为可重复读,MySQL默认的隔离级别也是可重复读。

并发事务导致的问题

脏读:一个事务可以读取到另外一个事务未提交的数据
不可重复读:一个事务对同一数据多次读取得到不同结果
幻读:一个事务先根据某些条件查询出一些记录,之后另一个事务又向表中插入了符合这些条件的记录,原先的事务再次按照该条件查询时,能把另一个事务插入的记录也读出来

以下表格表示每个级别可能发生的问题 隔离级别脏读不可重复读幻读读未提交有有有读未提交无有有可重复读无无有串行化无无无

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5590600.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-14
下一篇 2022-12-15

发表评论

登录后才能评论

评论列表(0条)

保存