найти причины взаимоблокировки mysql

1. У меня есть скрипт, который выполняет некоторые операции обновления/удаления

2. Все операции sql выполняются внутри транзакции (таблицы InnoDb)

3. Время от времени я получаю сообщение "Обнаружена взаимоблокировка при попытке получить блокировку; попробуйте перезапустить транзакцию"

В этом приложении есть несколько других заданий, которые выполняют операции с базой данных. Моя проблема заключается в том, чтобы найти, какие параллельные запросы из других сценариев мешают моему сценарию. Как проще всего их найти?


person mik    schedule 17.08.2010    source источник


Ответы (1)


Не пробовал, но Как выяснить, кто блокирует таблицу в MySQL, кажется разумным.

[...] возможно, в ограниченной степени, выяснить, кто блокирует ресурсы. В этой статье я объясню, как вы можете это сделать.

Эта статья является второй в серии о том, как использовать монитор innotop MySQL и InnoDB.

person VolkerK    schedule 17.08.2010