幻读(Phantom Read)
缩写:无
简述
同一事务内两次范围查询,因其他事务插入/删除满足条件的行而看到行集合变化(「幻影行」)。
使用场景
「先数后插」防重、区间唯一性、可串行化需求评估。
实践与应用
• 需要防幻影时用串行化、间隙锁/谓词锁或应用唯一约束。
• 不要假设 RR 在所有产品都能防幻读。
注意事项
• 唯一索引冲突可部分替代业务层防重。
对比与易混
| 幻读 | 不可重复读 | |
|---|---|---|
| 焦点 | 集合成员 | 已读行值 |
关联术语
• 不可重复读:已读行值变化
• 可串行化:更严隔离
• 间隙锁:部分实现的抑制手段