WebMD
本页大纲

隔离级别(Isolation Level)

缩写:无

简述

规定事务并发时允许哪些中间状态可见。标准常见:读未提交、读已提交、可重复读、可串行化;实现多用锁或 MVCC,细节因产品而异。

为何出现

完全串行化最安全但吞吐差;需要可配置的正确性/性能折中。

使用场景

账务与库存等敏感写、报表读、默认级别评审、异常读现象排障。

在体系中的位置

会话/事务属性;影响锁范围、快照与冲突检测。

实践与应用

• 查清当前 DBMS 默认级别与语义(如 RR 是否防幻读)。
• 写冲突路径提高级别或显式锁;只读分析可用快照读。
• 用测试复现脏读/不可重复读/幻读。

注意事项

• 同名级别在 MySQL/PostgreSQL 等实现并不完全相同。
• 级别越高越易死锁或序列化失败。

对比与易混

概念级别 典型减少
读未提交 最松
读已提交 脏读
可重复读 不可重复读(视实现)
可串行化 更多异常

信号与度量

异常业务结果、序列化失败重试率、锁等待。

关联术语

• 脏读 / 不可重复读 / 幻读:相关异常现象
• 锁 / MVCC:实现隔离的手段
• 事务:隔离的作用范围