事务隔离

transaction_isolation2026-10-16 18:04:00

事务隔离规定并发事务对彼此修改的可见性及允许出现的执行结果,用于平衡一致性需求与并发代价。

常见现象

脏读是读取未提交修改;不可重复读是再次读取同一记录时发现已提交变化;幻读涉及重复条件查询得到不同的匹配记录集合。仅排除这三类现象仍不一定达到可串行化。

产品差异

标准中的读未提交、读已提交、可重复读和可串行化是语义分类,实现不能只看名称。例如 PostgreSQL 以读已提交处理读未提交请求,其可重复读不允许幻读,但仍可能有序列化异常。

选择级别时应说明业务不变量、读取与写入方式。可串行化也可能通过中止事务解决冲突,应用需要完整事务重试,而非只重试最后一条语句。

参考资料

本页目录