首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Mysql锁等待超时错误

Mysql锁等待超时错误
EN

Stack Overflow用户
提问于 2012-04-17 16:32:03
回答 1查看 772关注 0票数 2

我正在使用Mysql中真正的大数据。其中一个表由大约400万行组成,在这些行上不断发生更新查询。

这个update查询在一段时间之前一直执行得很顺利,但是随着行数的增加,它给我带来了锁等待超时错误的严重问题。

我搜索了它的解决方案,我得到的唯一解决方案是增加innodb_lock_wait_timeout,但我在某处读到,这实际上是解决该错误的一个糟糕的选择。

谁能帮助我如何解决这个问题而不增加innodb_lock_wait_timeout,我正在寻找一些其他的解决方案,因为增加变量time_out会增加它在整个数据库中,但我只想增加一个表的事务时间,其中有这么多的记录。

EN

回答 1

Stack Overflow用户

发布于 2012-05-04 10:01:47

“此查询在cron作业的帮助下进行,同一表上同时发生数千个查询”

这就是问题所在。cron作业是有罪的一方,而不是mysql。我认为你最近已经达到了临界点。您需要将数据合并到较少数量的查询中。SOmething是这样的:

代码语言:javascript
复制
INSERT INTO users
(userid, total_received_credits, credit_amount, credit_amount) , 
values(51016 , 2.0, 2.0,  '2012-04-17 16:39:50'), 
(44016 , 3.0, 3.0,  '2012-04-17 16:39:50'), 
(11116 , 2.0, 2.0,  '2012-04-17 16:39:50') 
ON DUPLICATE KEY update total_received_credits = VALUES(total_received_credits) , 
total_received_credits = VALUES(total_received_credits), 
total_received_credits = VALUES(total_received_credits), 
credit_amount = VALUES(credit_amount)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10187755

复制
相关文章

相似问题

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