获取从查询构造结果集的总内存使用量

时间:2009-12-04 18:18:34

标签: php mysql

有没有办法告诉MySQL用于从单个查询构造结果集的总内存量?我正在寻找的东西类似于php的memory_get_peak_usage()。

我有一个复杂的查询,它产生几行求和数据。实际结果集很小 - 浮动十进制值的6或8行。但是我用来生成这些值的查询相当复杂 - 它在大型数据集上使用求和,分组,子查询等。

人们建议使用EXPLAIN,然后从那里估算行大小。这听起来容易出错;我不确定无论如何我都能搞清楚。

有办法做到这一点吗?

2 个答案:

答案 0 :(得分:0)

想到的唯一方法是查看mySQL进程本身并观察其内存占用情况。我确信有这方面的工具,但是在拥挤的机器上找到合适的工艺可能会变得很困难。

答案 1 :(得分:0)

我刚刚发现MySQL自5.0.37开始内置了一个探查器:

http://dev.mysql.com/tech-resources/articles/using-new-query-profiler.html

但是有一点点障碍:     记忆 - 目前尚未实施