2010-09-16 3 views
1

Как я могу регистрировать весь запрос, сколько секунд выполняется запрос MYSQL для выполнения, чтобы повысить производительность базы данных? Я использую PHPНастройка производительности База данных MYSQL

+1

Может быть, вы хотите, чтобы проверить, какой запрос является самым медленным попробовать журнал MySQL медленно запроса для того, чтобы это использование туздЫ --log-медленно-запросов [= имя_файла] Он будет войти в файл медленные запросы –

+1

Создать оболочку чтобы обрабатывать все запросы, таким образом вы можете каждый раз включить их и сохранить в журнале. –

+0

Позвольте мне выполнить поиск для вас: http://stackoverflow.com/search?tab=votes&q=[mysql]%20performance – fabrik

ответ

1

Use the slow query log для улавливания запросов, которые работают дольше установленного срока (по умолчанию 2 секунды). Это покажет вам худших преступников; вероятно, многие из них будут низко висящими фруктами, закрепляемыми надлежащими индексами.

Он не поймает другой тип запаха кода: относительно быстрый запрос, выполняющийся много раз в узком цикле.

Если вы хотите, вы можете установить нижний предел запроса равным 0 и он будет регистрировать все запросов - обратите внимание, что это само по себе замедлит работу сервера.

+0

Я запустил указанную выше команду в консоли и выполнил мой браузер приложения frm, но ничего не записано :(Что делать? –

+0

@Ashwin: Лучше всего изменить настройки в конфигурационном файле MySQL. медленные запросы регистрируются, это означает, что у вас нет запросов, работающих дольше, чем указанное время - на самом деле у вас есть * измеримая проблема с производительностью? Как я уже сказал, вы можете установить ограничение на медленный запрос на 0 в своей конфигурации, но этот объем ведения журнала может замедлить работу сервера. – Piskvor

+0

да, что ничего не регистрировалось, но когда я дал log-queries-not-using-indexes –

Смежные вопросы