Вывод статистики MySQL

0

У меня есть файл SQL с временным созданием таблиц, некоторые данные загрузки данных, некоторые выбирают и некоторые обновления.

Я хотел бы узнать время, потраченное на каждое утверждение, через CLI на оболочке. Если мой файл содержит:

SELECT "Step 1" AS '';
SELECT col1, col2 FROM t1 ORDER BY col3;

И я запустил:

mysql -h host db < file

Выход, который я хотел бы получить, это:

Step 1
1 row in set (0.00 sec)
col1 col2
20073 0724081
20073 0724685
20073 0726347
20073 0726932
20073 0733623
5 rows in set (0.00 sec)

Tne 1 row in set (0.00 sec) и 5 rows in set (0.00 sec) - это информация, которую я ищу, НЕ время Un * x для процесса.

Я попробовал разные опции mysql, даже --show-warnings --i-am-a-dummy безрезультатно. Есть ли способ получить запрошенную информацию?

Спасибо,

EDIT: Добавлено отсутствующее время для первого выбора.

Теги:

2 ответа

1
Лучший ответ

попробуйте mysql profiler - http://dev.mysql.com/tech-resources/articles/using-new-query-profiler.html

  • 0
    Спасибо за информацию профилирования. Я могу использовать это для потраченного времени. Есть ли способ получить количество возвращаемых строк?
  • 0
    @Danosaure - в C API есть mysql_num_rows () и mysql_affered_rows (), но вы, вероятно, не можете получить к нему доступ через bash. Обычно я делаю mysql -N -h host db < file| wc -l или направить результаты в файл и выполнить wc -l
Показать ещё 3 комментария
0

Я предполагаю, что вы теряете данные синхронизации из-за округления. (например, ваш запрос принимает LOT менее 0,001 секунды.

  • 0
    Дело в том, что я не получаю эту последнюю строчку вообще. Я хотел бы иметь его для каждой строки.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню