mysql事务-隔离级别
来源:互联网 发布:windows计划任务设置 编辑:程序博客网 时间:2024/05/21 17:37
事务隔离级别一般分为四个层级:
READ-UNCOMMITTED; 导致--->脏读、不可重复读、幻读
READ-COMMITTED; 导致--->------、不可重复读、幻读
REPEATABLE-READ; 导致--->-------、---------------、幻读
SERIALAZIBLE; 导致--->-------、---------------、-----
上图所谓的表应该没什么说的。今天在dos下想要进行验证,发现得不到验证的结果。过程如下:
一、验证一
1、打开两个dos窗口A、B连接本地mysql;
2、mysql默认的global隔离级别为REPEATABLE-READ,查看方式为(select @@global.tx_isolation)。
A设置session的隔离级别为READ-UNCOMMITTED,方式为(set tx_isolation = 'READ-UNCOMMITTED')。
B的隔离级别还是默认的REPEATABLE-READ.
3、B窗口打开事务(begin或start transaction),更新测试表的测试数据。update操作
4、A窗口打开事务(方式和步骤3一致),查询测试表的测试数据,此时发现测试数据已经修改。
5、B执行回滚(rollback),查询发现步骤3的更新已经回滚;
6、A查询测试表的测试数据,发现也已经回滚。
?问题不应该是A查询的数据还是更新后的脏数据吗?
二、验证二
步骤1和验证一一致;
1、。。。
2、B窗口打开事务(begin或start transaction),更新测试表的测试数据。update操作
3、A窗口打开事务(方式和步骤3一致),查询测试表的测试数据,此时发现测试数据已经修改。
?问题不应该是A窗口读的数据应该是没有更新的数据吗?因为A的默认隔离级别为REPEATABLE-READ
当时考虑可能是mysql的自动提交惹的祸,查看mysql的自动提交设置(show variables like 'autocommit')
mysql的默认自动提交,修改A、B的autommit为手动,(set autocommit = 0)
然后再进行验证,结果一样,请大牛们解惑,谢谢
- mysql事务隔离级别
- Mysql 事务隔离级别
- mysql 事务隔离级别
- MySQL事务隔离级别
- mysql 事务隔离级别
- mysql 事务隔离级别
- mysql 事务隔离级别
- MySQL 事务隔离级别
- mysql事务隔离级别
- Mysql事务隔离级别
- MySQL事务隔离级别
- mysql事务隔离级别
- mysql事务隔离级别
- MYSQL事务隔离级别
- mysql事务隔离级别
- Mysql事务隔离级别
- MySQL事务隔离级别
- MySQL事务隔离级别
- iOS开发---The run destination iPhone is not valid for Running the scheme问题
- 3dmax切割平行线
- python pdb 调试
- 依赖注入
- 开通支付宝口碑收款码提现免手续费,信用卡转账秒到支付宝
- mysql事务-隔离级别
- 【设计模式】【十】工厂方法模式
- 欢迎访问zjunzhao的博客
- poj2828 Buy Tickets
- AndroidStudio 运行Pepper Emulator
- 数组 字典转Json
- 2016年Web前端面试题目汇总
- avalonjs 实现简单购物车
- java 相关名词解释