MySQL: Убиваем «тяжелые» запросы

2011-09-14

Что делать, если был запущен сложный SQL-запрос, и он выполняется очень длительное время. Особенно это актуально в том случае, если дело касается «живого» сервера, и для системы критично время простоя неотвечающего SQL-сервера.

Решить проблему можно прямо через SQL-интерфейс отправки запросов, к примеру — через phpMyAdmin.

Сначала необходимо выполнить команду:

show processlist;

Эта команда вернет список всех запросов, которые выполняются или стоят в очереди на выполнения. Теперь нужно найти в этом списке тот тяжелый sql-запрос, который подвесил систему, взять его ID и снять его командой «kill».

Примет:

kill 221753;

где 221753 — это ID запроса, который подвесил SQL-сервер.



4 комментария на «MySQL: Убиваем «тяжелые» запросы»

  1. Oleg:

    Спасибо за совет, не знал такого

  2. htmaker:

    Как убить проблемный MySQL запрос
    http://yournet.kz/view/868

  3. Иван:

    А как сделать так чтобы регулярно пояаляющиеся тяжелые запросы отваливались по заданному таймауту? Каждый

  4. Иван:

    Каждый запрос руками убивать не айс. Может другие варианты есть борьбы с тяжелыми запросами?

Добавить комментарий