发布
社区首页 >问答首页 >mysql临时表的创建非常慢

mysql临时表的创建非常慢
EN

Stack Overflow用户
提问于 2018-06-18 09:49:41
回答 1查看 2.4K关注 0票数 0

我在两个不同的系统中使用mysql。我有一个系统与ubuntu和另一个与debian。

我必须在某个时候创建一个临时表来显示数据,而真正奇怪的是,在ubuntu系统上,它需要400 ms (来自浏览器的响应),而在debian上则需要超过10秒!

我已经在mysql配置中检查了2个值,并拥有:显示全局变量,如'tmp_table_size';这在两个服务器上都是相同的: 16777216

但区别在于:显示全局状态,如'created_tmp_disk_tables';在快速服务器上显示11,在慢速服务器上显示102。

我真的不知道还能在哪里查找,也不知道如何对其进行优化,以便在两个服务器上都有相同的功能。

当然,我的生产服务器在debian上。

快速服务器正在运行: mysql版本5.7.18-0ubuntu0.16.04.1慢速服务器正在运行: mysql版本5.5.55-0+deb8u1 8u 1

在快速服务器上,我有:

代码语言:javascript
代码运行次数:0
复制
show global variables like 'default_tmp_storage_engine';
+----------------------------+--------+
| Variable_name              | Value  |
+----------------------------+--------+
| default_tmp_storage_engine | InnoDB |
+----------------------------+--------+
1 row in set (0.00 sec)

在慢速服务器上,我有:

代码语言:javascript
代码运行次数:0
复制
show global variables like 'default_tmp_storage_engine';
Empty set (0.00 sec)
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-06-18 18:01:34

请考虑一下你的建议。

代码语言:javascript
代码运行次数:0
复制
max_heap_table_size=16M  # and should always be same as tmp_table_size

在每个版本上都可以使用“%tmp_table_size”这样的全局变量来查看此时您拥有的内容。

全局变量default_tmp_storage_engine在5.5-5.7之间添加。

要获得更多的帮助,请在我的个人资料中找到联系信息。

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

https://stackoverflow.com/questions/50906745

复制
相关文章

相似问题

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