首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MySQL事务隔离

MySQL事务隔离
EN

Stack Overflow用户
提问于 2013-03-18 09:58:12
回答 1查看 635关注 0票数 1

我正在使用Percona (MySQL),目前正在开发一个具有多个使用该应用程序的用户的网络桌面应用程序。我的应用程序数据库不含事务,但在选择我必须使用的Transaction-Isolation时有问题,因为我的应用程序有财务记录,所以很敏感。那么,有人能帮我决定我必须使用哪种事务隔离吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-03-19 02:13:36

@deceze和@zerkms是正确的--决定最佳事务隔离的不是数据的性质。这是应用程序及其查询的本质。您甚至可能发现在同一个应用程序中使用两个隔离级别的情况。

Repeatable-read事务确保您可以在给定事务期间多次查询相同的数据,并且您的查询将返回不变的数据--即使数据同时被其他会话更改。在会话启动新事务之前,您的会话将不会看到这些更改,即使它们已经提交。例如,这对于所有数据的逻辑转储都是有用的。另外,复杂的报告需要执行几个步骤,并且需要多次阅读相同的表。

Read-committed还允许其他会话并发地更改数据,但是您的事务将始终看到最新提交的数据状态。因此,即使在同一事务处理期间,相同的查询也可以返回不同的(最新的)结果。这很有用,因为它减少了数据库为了长期运行的事务而保留旧行版本的需要。

还有可序列化和读取未提交的隔离级别,但是很少使用这些级别。

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15473942

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档