![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
事务
javashareauthor
分享让知识变得更加得有价值
展开
-
怎么让mysql的myisam引擎支持事务
这个是一个面试题,但是考察的并不是常规逻辑思维。myisam想支持事务,那么可以借助lock table 来实现,但是这样只能实现串行化隔离级别,其它隔离都实现不了。 但是因mysiam不支持崩溃恢复,所以即使用lock table硬实现,也是问题多多: ACID里面, 原子性和持久性做不到; 隔离性只能实现基本用不上的串行化; 一致性在正常运行的时候依赖于串行化,在异常崩溃的时候也不能保证。...原创 2020-02-11 10:58:48 · 1606 阅读 · 0 评论 -
事务的两阶段提交
为什么必须有“两阶段提交”呢?这是为了让两份日志(redo log和binlog)之间的逻辑一致。详细解释用update 语句来做例子。假设当前 ID=2 的行,字段 c 的值是 0,再假设执行 update 语句过程中在写完第一个日志后,第二个日志还没有写完期间发生了 crash,会出现什么情况呢? 1. 先写 redo log 后写 binlog假设在 redo log ...原创 2020-02-08 17:21:16 · 738 阅读 · 0 评论 -
事务隔离级别理解
1)、READ_UNCOMMIYTTED 读未提交 级别最低 允许别的事务去读取这个事务未提交之前的数据 缺点:可能会造成脏读、幻读、不可重复读。 例子讲解:店家对1000元商品进行降价500处理,数据更改,但未提交事务; 然后你查到降价将货物并提交订单; 可是商家由于操作异常,数据回滚,返回原价格1000; 这样,在店家那边是没有操作成功的,可是在你这里却得到了降价...转载 2018-04-26 22:10:38 · 123 阅读 · 0 评论