事务是如何影响你的系统(二)
MySQL 的事务隔离级别:
读未提交
读已提交
不可重复读
串行化
默认的是对于目前 MySQL5.7 之后的版本,默认的存储引擎是 InnoDb ,默认的事务隔离级别是 可重复读;
默认的在配置文件中就可以找到
查询当前的事务隔离级别:
复制代码
不同的事务隔离级别带来的问题
[ ] 1.查看当前 mysql 的隔离级别:
复制代码
mysql 默认的隔离级别是:
复制代码
数据库里面会创建一个视图,访问的时候以视图的逻辑结果为准。
1.在“可重复读”隔离级别下,这个视图是在事务启动时创建的,整个事务存在期间都用这个视图。
2.在“读提交”隔离级别下,这个视图是在每个 SQL 语句开始执行的时候创建的。
3.这里需要注意的是,“读未提交”隔离级别下直接返回记录上的最新值,没有视图概念;
4.而“串行化”隔离级别下直接用加锁的方式来避免并行访问
- 可重复读是指,一个事务执行过程中看到的数据,总是跟这个事务在启动时看到的数据是一致的。当然在可重复读隔离级别下,未提交变更对其他事务也是不可见的。
版权声明: 本文为 InfoQ 作者【卢卡多多】的原创文章。
原文链接:【http://xie.infoq.cn/article/b184ec989cdf1eefa4546c8e9】。文章转载请联系作者。
评论