首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MySQL、索引和“锁定等待超时”

问MySQL、索引和“锁定等待超时”
EN

Stack Overflow用户
提问于 2010-12-17 05:55:46
回答 1查看 1.6K关注 0票数 1

今天,我一直在研究一些MySQL性能问题。我使用EXPLAIN查找表扫描,并通过创建索引修复了一些问题。

我的阅读速度非常快。

但从那以后,更新查询就成了一个很大的问题。当我重新启动Mysql时,最初的几个插入或更新工作正常。在此之后,update查询在60秒后开始显示错误"Lock wait timeout;try restarting transaction“。

Mysql是否在每次插入/更新时重新创建大型索引?我该如何解决这个问题呢?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-12-17 06:02:00

是的,MySQL会在每次更新时重新创建索引。你需要找到最好的地方。仅将索引放在将用于联接条件(或联接ON条件)的键上。

如果你索引所有的东西,你的更新将会太慢。如果你没有索引任何东西,你的读取将会太慢。

如果在将索引缩小到所需的范围后仍然存在性能问题,那么您可能应该重新评估数据结构。

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

https://stackoverflow.com/questions/4465750

复制
相关文章

相似问题

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