Ситуация такова, на сервере(FreeBSD XXXxxx 6.4-STABLE FreeBSD 6.4-STABLE #1: Wed Jan 14 18:51:53 EET 2009 root@XXXxxx:/usr/src/sys/i386/compile/XXX i386) крутится много всякого разного, c недавних пор mysql(mysql-server-5.1.30) периодически задыхается, mysqladmin status показывает:
Uptime: 1019619 Threads: 35 Questions: 121286069 Slow queries: 727 Opens: 71447 Flush tables: 1 Open tables: 64 Queries per second avg: 118.952Меня смущает Queries per second avg: 118.952, это очень много - ничего из работающего не должно так активно использовать базу.
Подскажите как можно наверняка узнать что так активно юзает базу(хотя бы какими запросами).
Если один запрос выполнится за 0.1 секунды, то получим скорость 10 запросов в секунду :)
А вообще show processlist покажет вам все процессы, explain поможет понять в чем проблема конкретного запроса.
>Если один запрос выполнится за 0.1 секунды, то получим скорость 10 запросов
>в секунду :)Недопонял к чему вы ведете.
>А вообще show processlist покажет вам все процессы, explain поможет понять в
>чем проблема конкретного запроса.Все процессы большую часть времени имеют состояние Sleep, периодически запускаются(активизируются) некоторые задачи и я вижу их запросы при помощи mysqladmin processlist, но как мне поймать те которые так сильно нагружают сервер?
>>Если один запрос выполнится за 0.1 секунды, то получим скорость 10 запросов
>>в секунду :)
>
>Недопонял к чему вы ведете.
>>А вообще show processlist покажет вам все процессы, explain поможет понять в
>>чем проблема конкретного запроса.
>
>Все процессы большую часть времени имеют состояние Sleep, периодически запускаются(активизируются) некоторые задачи
>и я вижу их запросы при помощи mysqladmin processlist, но как
>мне поймать те которые так сильно нагружают сервер?в настройках my.cnf
log-slow-queries=slow.log
поможет подавану (хинт: лог медленных запросов)