mysql 四种隔离级别详解

本文通过实例演示详细解释了MySQL的读未提交、读已提交、可重复读和串行化四种隔离级别,展示了它们如何处理脏读、不可重复读和幻读问题,帮助读者深入理解事务的并发控制。
摘要由CSDN通过智能技术生成

本文以一系列详细的sql语句,使你彻底理解mysql的四种隔离级别。
下面的例子中,用到了两个会话(session),每个session中各开启了一个事务,分别记作session A, 事务A;session B, 事务B。

准备工作

首先新建一个表‘student’,并插入两行数据

CREATE TABLE `student` (
  `id` int(11) NOT NULL,
  `name` varchar(255) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

insert student(id, name) values(1, 'zhangsan'), (2, 'lisi');

表中数据如下图:

id name
1 zhangsan
2 lisi

然后用以下sql查询数据库的默认隔离级别

select @@transaction_isolation; 

可以看到默认隔离级别是“可重复读”

REPEATABLE-READ

接下来通过sql详细地说明每一个隔离级别的含义。

read

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值