Как стать автором
Обновить
8
0

Пользователь

Отправить сообщение

Массовая остановка запросов

Время на прочтение1 мин
Количество просмотров12K
В качестве небольшого дополнения к статье Чистка сервера базы данных.

Иногда, в очереди скапливается большое количество запросов к БД, выполнение которых необходимо остановить, не перезапуская MySQL.

Для решения этой проблемы мы используем такой метод:

Получаем список долго выполняемых запросов, в данном случае — SELECTы, выполняемые дольше 100 секунд
SELECT CONCAT('KILL ', id, ';') 
FROM information_schema.processlist 
WHERE 
`info` LIKE('SELECT%') 
AND `time` > 100 
INTO OUTFILE '/tmp/killList.sql'; 


Собственно, убиваем их:
SOURCE /tmp/killList.sql; 


По желанию, можно выбирать запросы по хосту, имени пользователя, базе данных, и т.д.
Всего голосов 52: ↑37 и ↓15+22
Комментарии9

Информация

В рейтинге
Не участвует
Откуда
Кишинев, Молдова, Молдова
Дата рождения
Зарегистрирован
Активность