mysql事务隔离级别、脏读、不可重复读、幻读

本文深入探讨了MySQL事务的四种隔离级别:读未提交、读已提交、可重复读及串行化,分析了每种级别的特点及可能产生的问题,如脏读、不可重复读等,并提供了在不同场景下如何合理选择事务隔离级别的建议。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

参考文章
mysql事务隔离级别
https://www.cnblogs.com/huanongying/p/7021555.html

事务隔离级别

按照“读未提交”–>“读已提交”–>“可重复读”–>“串行化”的顺序,越往后面隔离级别越高,事务之间的影响越小。
其实思路就是并发控制的问题
实际根据场景去设置对应事务隔离级别

测试实验

mariadb 的docker镜像版本是 mariadb:10.3
在这里插入图片描述在这里插入图片描述
在这里插入图片描述在这里插入图片描述

读未提交(read uncommitted)和脏读

两个同时进行的事务A、B,A会读到B还未提交的的数据,这种事务隔离级别会存在脏读的问题
在这里插入图片描述在这里插入图片描述
在这里插入图片描述

读已提交(read committed)和不可重复读

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

可重复读(repeatable read)和可重复读

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值