Для большинства приложений, над которыми я работаю, я включаю вывод профилирования запросов, который можно легко включить в среде разработки. Это выводит SQL, время выполнения, трассировку стека и ссылку для отображения вывода объяснения. Также выделяются запросы, выполняющиеся дольше 1 секунды.
Хотя вам, вероятно, не нужно что-то более сложное, вы можете получить достаточно хорошее представление о времени выполнения запросов, написав функцию на PHP, которая оборачивает выполнение запроса и сохраняет отладочную информацию в сеансе (или просто выводит ее ). Например:
function run_query($sql, $debug=false, $output=false) {
$start = microtime(true);
$q = mysql_query($sql);
$time = microtime(true) - $start;
if($debug) {
$debug = "$sql<br/>$time<br/><br/>";
if($output) {
print $debug;
} else {
$_SESSION['sql_debug'] .= $debug;
}
}
return $q;
}
Это просто грубая идея. Вы можете настроить его так, как хотите.
Надеюсь, это поможет -