Есть ли способ остановить отложенные вставки MYSQL из конфигурации MySQL?

У меня возникла странная проблема с одним из наших серверов. Я вижу, что есть отложенные вставки mysql

+--------+----------------+-----------+------------------+----------------+------+--------------------+------------------------------------------------------------------------------------------------------+
| Id     | User           | Host      | db               | Command        | Time | State              | Info                                                                                                 |
+--------+----------------+-----------+------------------+----------------+------+--------------------+------------------------------------------------------------------------------------------------------+
| 219586 | DELAYED        | localhost | XXXX             | Delayed insert | 202  | Waiting for INSERT |                                                                                                      |

на редко используемых базах данных. Из того, что я понял из руководства по MySQL, эти вставки ждут других, чтобы оптимизировать часто используемые базы данных для записи вставок в пакетах/блоках. К сожалению, говорят, что этот метод потребляет много памяти и крайне неэффективен при использовании на редко используемых базах данных. В данном конкретном случае к этой базе данных поступает всего 10-20 запросов в день, что делает задержки чрезвычайно большими - до целого дня. Существуют аналогичные проблемы с другими базами данных/пользователями, и при добавлении они, похоже, загружают использование памяти и ЦП MySQL.

Есть ли способ предотвратить задержку отложенных запросов? Как заставить их действовать как обычные запросы?

Заранее спасибо!

Привет, венецианец.


person Venetsian    schedule 02.07.2009    source источник


Ответы (2)


  1. Вы можете FLUSH TABLES или «KILL 219586», чтобы заставить этот поток завершить свою работу и выйти.
  2. Установите max_delayed_threads=0 в файле конфигурации и перезапустите экземпляр, чтобы полностью отключить функцию DELAYED.
  3. Читайте документы - это будет быстрее, чем ждать 6 часов на форуме
person noonex    schedule 02.07.2009
comment
@noonex - 6-часовое ожидание ответа, как правило, менее болезненно, чем попытка расшифровать документацию MySql, особенно если вы используете MySql в Windows, поскольку различия достаточно тонкие, чтобы вызвать головную боль =) - person Rob; 03.07.2009

Не беспокойтесь об этой нитке. Он просто хранится на случай, если в будущем будет отложенная вставка. на самом деле ничего не делает..

person Evert    schedule 05.07.2009