Получить общее использование памяти для построения набора результатов из запроса - PullRequest
0 голосов
/ 04 декабря 2009

Есть ли способ узнать, сколько общего объема памяти MySQL использовалось для построения набора результатов из одного запроса? Я ищу что-то похожее на php memory_get_peak_usage ().

У меня сложный запрос, который выдает несколько строк суммированных данных. Фактический набор результатов крошечный - 6 или 8 строк с плавающим десятичным значением. Но запрос, который я использую для генерации этих значений, довольно сложен - он использует суммы, группировки, подзапросы и т. Д. Для большого набора данных.

Люди предложили использовать EXPLAIN и затем оценить размер строк оттуда. Это звучит ошибочно для меня; Я не уверен, что смогу понять это в любом случае.

Есть ли способ сделать это?

Ответы [ 2 ]

0 голосов
/ 16 декабря 2009

Я только что обнаружил, что в MySQL встроен профилировщик с 5.0.37:

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

Но есть небольшая загвоздка: ПАМЯТЬ - в настоящее время не выполняется

0 голосов
/ 04 декабря 2009

Единственный способ, который приходит на ум, - это смотреть на сам процесс mySQL и наблюдать за его объемом памяти. Я уверен, что для этого есть инструменты, однако на переполненной машине может оказаться трудно определить правильный процесс.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...