[recovery mode] Массовая остановка запросов
В качестве небольшого дополнения к статье Чистка сервера базы данных.Иногда, в очереди скапливается большое количество запросов к БД, выполнение которых необходимо остановить, не перезапуская 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;
По желанию, можно выбирать запросы по хосту, имени пользователя, базе данных, и т.д.