事物

事物特性(ACIC)

  1. 原子性(atomicity)

    一个事物要么全部提交成功,要么全部失败回滚,不能只执行其中的一部分操作。

  2. 一致性(consistency)

    事物的执行不能破坏数据库数据的完整性和一致性,一个事物在执行钱和执行后,数据库都必须处于一致性状态。

  3. 隔离性(isolation)

  4. 持久性(durability)

    一旦事物提交,那么它对数据库的状态的变更就会永久保存到数据库中。

事物隔离级别

数据库事物有四种隔离级别,默认事物级别为可重复读:

  1. Read Uncommitted(读未提交)

  2. Read Committed(读已提交)

  3. Repeatable Read(可重复读)

  4. Serializable(可串行化)

    这是最高的隔离级别,它通过强制事物排序,使之不可能相互冲突,从而解决幻读问题。 简言之,它是在每个读的数据行上加上共享锁。在这个级别,可能导致大量的超时和锁竞争。