首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >事务隔离对mysql写操作的影响

问事务隔离对mysql写操作的影响
EN

Stack Overflow用户
提问于 2016-11-16 12:43:14
回答 1查看 228关注 0票数 4

我有一个mysql进程,它执行一次读取和一次更新(在两个不同的表中)。为了确保读取速度,我将隔离级别更改为读取未提交。脏读是可以的,数据一致性并不重要。但它看起来是读未提交隔离级别,更新非常慢--事实上它会影响我的表中的其他写操作。

我的代码如下所示

代码语言:javascript
复制
SET SESSION TRANSACTION ISOLATION LEVEL READ UNCOMMITTED;

SELECT ParentId INTO @ParentId FROM TableA where Id = var_ID;



UPDATE TableB SET Counter = Counter + 1 where Id = @ParentId;

SET SESSION TRANSACTION ISOLATION LEVEL REPEATABLE READ;

我假设隔离级别只影响读操作,而不影响写操作。在我包含了Set会话之后...语句中,我的数据库的性能急剧下降。TableB上的所有写入都需要1-2秒,而之前的时间小于100ms(表中有5M-8M条记录)。

有没有人能帮我指点一下?

我在这里找到了类似的问题,但没有得到答案

Read Uncommitted Isolation Level Impact On Insert/Update Transactions

EN

回答 1

Stack Overflow用户

发布于 2016-11-16 15:03:58

试一试

代码语言:javascript
复制
SET SESSION TRANSACTION ISOLATION LEVEL READ UNCOMMITTED;

SELECT ParentId INTO @ParentId FROM TableA where Id = var_ID;



UPDATE TableB SET Counter = Counter + 2 where Id = @ParentId;

SET SESSION TRANSACTION ISOLATION LEVEL REPEATABLE READ;
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40624214

复制
相关文章

相似问题

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