12.2.2 并发操作带来的问题

2025-07-29 02:42:22 更新

并发操作带来的数据不一致性有三类:丢失修改、不可重复读和读脏数据。

问题原因:在事务并发过程中,因为多个事务对相同数据的访问,干扰了其他事务处理,产生了数据的不一致性,是因为事务隔离性被破坏。

问题焦点:事务在读写数据时不加控制而相互干扰。

解决方法:保证事务的隔离性。






1

丢失修改

事务A和B同时修改某数据,后者覆盖了前者修改结果

同时售出2张票,系统库存却只减少1张

2

不可重复读

事务A读取某数据后,事务B对数据做了修改,事务A再次读取,两次读取结果不相同


3

读脏数据

事务B修改某数据后,事务A读取数据,事务B回滚,数据恢复原值,事务A读取了无效数据