繁体   English   中英

MySQL。 应该使用什么隔离级别?

[英]MySQL. What isolation level should be used?

有很多情况我不知道在MySQL中应该使用什么样的隔离来避免使用损坏的数据。

例如,假设有一个预订剧院的应用程序。 用户选择一个座位,并在交易中检查所选座位是否空闲,如果是,则在第二步中保存预订。

可能会发生这样的情况,即在验证座位是空闲的时,在保存预订之前,另一个用户先预订了它。

对于这种情况并使用 MySQL,我应该使用什么隔离级别?

Shadow 对这种操作需要应用程序级别的支持是正确的。 特别是在 web 应用程序中,每个页面视图或 AJAX 请求是一个单独的操作,并且可能使用其自己的连接,因此您不能在未提交的 Z9ED39E2EA931586B6A985A6942EF573E 中保持事务。

话虽如此,如果您的事务执行SELECT... FOR UPDATE; UPDATE; COMMIT ,则默认的REPEATABLE READ隔离级别应该可以很好地为您服务; SELECT... FOR UPDATE; UPDATE; COMMIT SELECT... FOR UPDATE; UPDATE; COMMIT序列。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM