首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >复制临时表时MySQL‘锁定’进程

问复制临时表时MySQL‘锁定’进程
EN

Stack Overflow用户
提问于 2011-11-22 05:07:36
回答 2查看 1.4K关注 0票数 1

我有一个查询,它需要很长时间才能运行,但最终会生成一个新表。实际的连接并不都那么慢,但它几乎所有的时间都花在“复制到临时表”上,在这段时间内,所有其他查询(应该是去往不相关的表)的状态都是“锁定”的。我正在优化长查询的过程中,但它可以花一段时间,因为它是一个离线过程,但它不是可以停止所有其他查询,无论如何都不应该与它相关。有没有人知道为什么所有其他不相关的查询都会以“锁定”的形式返回,以及如何防止这种行为?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-11-22 05:20:54

你说的对,“不相关的表”不应该受到影响。他们不应该,据我所知,他们不应该。

在MySQL上有很多关于锁、存储引擎和处理它的方法的信息。

为了限制锁,我建议您编写一个应用程序来读取执行此新表所需的所有数据,并简单地让您的应用程序将值插入到新表中。这可能需要更长的时间,但它将在较小的块中完成,并且具有较少的锁或没有锁。

祝好运!

票数 1
EN

Stack Overflow用户

发布于 2011-11-22 05:13:26

您的MySQL版本是什么?

你使用MyISAM吗?MyISAM在大型SELECT命令上有一个很大的锁问题。

你有专用的服务器吗?内存中表的最大大小是多少(请查看my.cnf)?

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

https://stackoverflow.com/questions/8218548

复制
相关文章

相似问题

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