Можно периодически проверять наличие открытых таблиц:
show open tables where In_Use > 0
Если непустой вывод, тогда эти таблицы используются в тот момент. Пока таблица заблокирована для обновления, другие запросы ждут.
Добавлено
Если используются транзакции, то они запирают таблицу на время обновления.
Также возможно, что ресурсов недостаточно на машине.
Проверить рекомендации mysqltuner.