首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如果MySQL没有足够的空间容纳临时表,会发生什么情况?

问如果MySQL没有足够的空间容纳临时表,会发生什么情况?
EN

Stack Overflow用户
提问于 2015-02-27 13:10:03
回答 1查看 640关注 0票数 1

由于一公升(可能两周)的MySQL 5.5不时被塞。这意味着服务器负载变得非常高,所有查询都被冻结,#连接达到极限。我需要重新启动MySQL服务器来解决这个问题。

也许这只是一个死锁,但是由于应用程序逻辑中没有任何变化,所以我不这么认为。如果没有足够的磁盘空间来填充临时表,我想知道会发生什么。这可能是这个服务器上的一个问题。文档http://dev.mysql.com/doc/refman/5.5/en/full-disk.html说,设备错误消息上将没有空间,但是我没有在mysql-error.log中找到这一点。这条消息也会报告临时表吗?

在慢速查询日志中我找到了这个:

代码语言:javascript
复制
# Query_time: 61229.230881  Lock_time: 0.000183 Rows_sent: 0  Rows_examined: 193600429837

对于这个查询,需要一个大的临时表。我不确定这是在重启MySQL服务器之前还是之后。我只知道这是最后一个问题。

EN

回答 1

Stack Overflow用户

发布于 2015-02-27 15:03:47

不要担心磁盘空间,如果这是问题所在,MySQL会让您知道的。

一个需要检查193600429837行的查询很可能在一二十年内完成。不幸的是,您的服务器足够强大,可以支持这个卷,并且尽力完成查询。

重写违规查询,或尝试添加一两个索引(另请参阅:EXPLAIN)。

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

https://stackoverflow.com/questions/28765932

复制
相关文章

相似问题

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