欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

mysql隔离级别与锁,接口并发响应速度的关系(1)

程序员文章站 2024-01-13 18:24:04
...

 默认隔离级别:可重复读

 1 原始数据 
 2 | id | name      | addr |
 3 |  6 | nick      | NULL |
 4 
 5 事务1                                      事务2
 6                                            
 7 start transaction                          start transaction
 8                                            
 9                                            select * from t_user where id=6;
10                                            // name = nick
11                                            
12 update t_user set name='lock' where id=6   
13                                            
14                                            select * from t_user where id=6;
15                                            // name = nick
16 commit;                                       
17                                            
18                                            select * from t_user where id=6;
19                                            // name = nick    
20                                            // 即使第1个事务已经提交数据,此事务中查询的结果仍然是旧值
21                                            commit;
22                                            
23                                            select * from t_user where id=6;
24                                            // name = lock

脏读 read uncommit 第一个事务还没提交, 第二个事务就读出来了, 如果第一个事务回滚了,第二个事务读的就是错误数据
不可重复读 read commit, 第一个事务提交之后,第二个事务可以立即查询出来,造成事务二两次读取结果可能不一样
幻读 可重复读 repeat read, 第一个事务提交之后,第二个事务读取的仍是事务开始时的值---保持不变
序列化 第一个事务做更新时,第二个事务读取不了

2 3 的区别 https://blog.csdn.net/v123411739/article/details/39298127