MySQL--事物
2017-12-14 本文已影响1人
小鱼嘻嘻
MySQL 事物
- 扁平事物
是最简单的一类事物,也是使用的最多的一类事物。 事物由begin开始,由commit或者rollback结束,要么全执行,要么全回滚。 - 带有保存点的扁平事物
保存点:用来通知系统应该记住事物当前的状态,以便之后发生错误时,事物能够回到保存点当时的状态。带保存点的事物也就是支持事物回滚到某个保存点而不用全部回滚。 - 链式事物
可以视为带有保存点事物的一个变种。带有保存点的事物当系统崩溃的时候事物保存点是会消失的,这意味着系统崩溃事物需要重新执行。然而,链式事物是指,在提交一个事物时,释放不需要的数据对象,将必要的处理上下文隐时地传给下一个要开始的事物。提交上一个事物和开始下一个事物操作将合并为原子操作。这意味着下一个事物将看到上一个事物的结果,就好像在一个事物里面进行一样。
链式事物和带有保存点事物的区别是:带有保存点的事物可以返回到任意保存点,链式事物只能回滚当前事物;链式事物执行commit之后释放当前事物所持有的锁,带有保存点的事物不影响迄今为止所持有的全部锁。 - 嵌套事务
由一个顶层事物控制着各个层次的事物,顶层事物之下嵌套的事物被称为子事物。任何子事物都在顶层事物提交之后才真正的提交。 - 分布式事物
通常是指在一个分布式环境下运行的扁平事物。