首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MySQL更新表集合计数=计数+1个并发问题

MySQL更新表集合计数=计数+1个并发问题
EN

Stack Overflow用户
提问于 2018-10-12 18:51:21
回答 1查看 238关注 0票数 1

我需要在每次调用时更新一个表并设置VOTE_COUNT = VOTE_COUNT + 1,假设我对数据库有10,000个并发访问权限,同时执行相同的语句:

UPDATE VOTE SET VOTE_COUNT = VOTE_COUNT + 1;

会不会有并发问题导致结果不等于10000?(初始计数= 0)

EN

回答 1

Stack Overflow用户

发布于 2018-10-12 19:50:50

根据mysql/mariadb底层存储引擎的不同,您可能会遇到并发或性能问题。

最好的做法是有一个具有事务处理功能的存储引擎,这样就不会出现并发问题。

对于使用没有事务处理的存储引擎的情况,它取决于锁定(否,基于行或基于表)。

如果没有锁,可能会出现并发问题,因为两个update语句可以同时读取值、加1并将其存储回去--因此一条(或多条) update语句将丢失!因为它们都会存储回相同的值。

当为每次更新锁定表时,并发update语句的执行速度将变得非常慢!

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

https://stackoverflow.com/questions/52777969

复制
相关文章

相似问题

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