当前位置:网站首页>面试官:说一下MySQL事务隔离级别?
面试官:说一下MySQL事务隔离级别?
2022-06-29 15:33:00 【InfoQ】
- READ UNCOMMITTED:读未提交。
- READ COMMITTED:读已提交。
- REPEATABLE READ:可重复读。
- SERIALIZABLE:序列化。
1.四种事务隔离级别
1.1 READ UNCOMMITTED
1.2 READ COMMITTED
1.3 REPEATABLE READ
1.4 SERIALIZABLE
1.5 小结
2.并发事务中的问题
2.1 脏读
2.2 不可重复读
2.3 幻读
3.隔离级别实战
3.1 查询事务隔离级别
select @@global.tx_isolation,@@tx_isolation;
3.2 设置事务隔离级别
set session transaction isolation level 事务隔离级别;- READ UNCOMMITTED
- READ COMMITTED
- REPEATABLE READ
- SERIALIZABLE
3.3 脏读问题
- 一个事务读取到了另一个事务为提交保存的数据,之后此事务进行了回滚操作,从而导致第一个事务读取了一个不存在的脏数据。接下来,我们使用 SQL 来演示一下脏读问题。
-- 创建一个城市表
drop table if exists city;
create table city(
id int primary key auto_increment,
name varchar(250) not null
);
- 客户端 A:set session transaction isolation level read uncommitted;
- 客户端 A:start transaction;
- 客户端 B:start transaction;
- 客户端 B:insert into city(name) values('西安');
- 客户端 A:select * from city;
- 客户端 B:rollback;
- 客户端 A:select * from city;

3.4 不可重复读问题

- 客户端 A:set session transaction isolation level read committed;
- 客户端 A:start transaction;
- 客户端 A:select * from city where id=1;
- 客户端 B:start transaction;
- 客户端 B:update city set name='长安' where id=1;
- 客户端 B:commit;
- 客户端 A:select * from city where id=1;

3.5 幻读问题


总结
边栏推荐
- 11. application layer data transmission format / port number -bite
- 雷达基本组成
- PostgreSQL source code learning (23) -- transaction log ④ - log assembly
- MySQL development specification pdf
- MySQL定时整库备份&滚动删除指定日期前的备份数据
- LeetCode-470-用Rand7()实现Rand10()
- 《网络是怎么样连接的》读书笔记 - 服务器端的局域网中(四)
- C#学习一:值类型与引用类型
- MySQL 数据库命名规范.PDF
- Neural network for remote sensing image processing
猜你喜欢

89. (cesium article) cesium aggregation diagram (custom picture)

LeetCode-470-用Rand7()实现Rand10()

PostgreSQL source code learning (23) -- transaction log ④ - log assembly

File常用工具類, 流相關運用 (記錄)
[data analysis] five common questions about learning SQL?

The way of enterprise transformation and upgrading: digital transformation, thinking first

Andorid Jetpack Hilt

12.UDP协议-bite

分页sql(rownum、row_number、dense_rank、rank)

Mingdeyang xilinx-k7-325t/410t core board data manual
随机推荐
DataKit 作为本地获取数据的 API 服务器
C language homework - matching system
stlink故障修复
Symfony framework security component firewall configuration
pwm转0-5V/0-10V/1-5V线性信号变送器
墨天轮“高可用架构”干货文档分享(含Oracle、MySQL、PG资料124篇)
Alibaba cloud experience Award: use polardb-x and Flink to build a large real-time data screen
LeetCode-234-回文链表
Paging SQL (rownum, row_number, deny_rank, rank)
这是少了什么依赖嘛?FlinkSql打包运行的时候报错,但是本地idea跑的时候是没问题的,求解,谢
企业转型升级之道:数字化转型,思想先行
我想知道我在南宁,到哪里开户比较好?另外,手机开户安全么?
卷积神经网络中各层的作用
MySQL 数据库命名规范.PDF
阿里云体验有奖:使用PolarDB-X与Flink搭建实时数据大屏
LeetCode-64-最小路径和
动态监听DOM元素高度变化
近期工作总结
CSDN无法复制问题
C SQLite class library