我在两个不同的系统中使用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
在快速服务器上,我有:
show global variables like 'default_tmp_storage_engine';
+----------------------------+--------+
| Variable_name | Value |
+----------------------------+--------+
| default_tmp_storage_engine | InnoDB |
+----------------------------+--------+
1 row in set (0.00 sec)
在慢速服务器上,我有:
show global variables like 'default_tmp_storage_engine';
Empty set (0.00 sec)
发布于 2018-06-18 10:01:34
请考虑一下你的建议。
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之间添加。
要获得更多的帮助,请在我的个人资料中找到联系信息。
https://stackoverflow.com/questions/50906745
复制相似问题