美文网首页
1.0.3 事务ACID

1.0.3 事务ACID

作者: RockyLuo_290f | 来源:发表于2019-02-08 03:29 被阅读0次

    Atomicity: 原子性

    事务中所有操作时不可再分的原子单位,要么全部成功,要么全部失败

    Consistency:一致性

    事务执行后 数据库状态与其他业务规则保持一致,如转账业务,无论事务执行成功与否,参与转账的两个账号余额之和应该不变

    Isolation:隔离性

    并发操作中,不同事务之间应该隔离起来,是每个并发中的事务不会相互干扰

    Durability:持久性

    一旦事务提交成功,事务中所有的数据操作都必须被持久化到数据库中,即使提交事务后,数据库马上崩溃,重启后,也必须通过某种机制回复(存log)

    事务并发读问题

    脏读: 读取到另一个事务未提交数据
    不可重复读: 两次读取不一致
    幻读(虚读): 读到另一个事务已提交数据

    四大隔离级别:

    Tables 脏读 不可重复读 幻读
    Read Uncommitted 允许 允许 允许
    Read Committed 不允许 允许 允许
    Repeatable Read 不允许 不允许 允许
    Serializable 不允许 不允许 不允许

    Oracle默认是read committed 可以选择Serializable
    Mysql默认是Repeatable Read

    相关文章

      网友评论

          本文标题:1.0.3 事务ACID

          本文链接:https://www.haomeiwen.com/subject/xjhnsqtx.html