Блокировка Innodb приводит к отключению всей базы данных - PullRequest
0 голосов
/ 26 мая 2010

Я искал много потоков и stackoverflow, но не смог найти никакого решения.Я пытаюсь вставить записи в несколько таблиц innodb случайным образом, а не с одним условием, которое приводит к сбою всей базы данных.Я получаю эту ошибку «Превышен тайм-аут ожидания блокировки; попробуйте перезапустить транзакцию»

Однажды на вопрос (# 1103248) был дан ответ здесь

В InnoDB вставка встолбец увеличения приводит к блокировке таблицы.Выбор строки FOR UPDATE приводит к блокировке уровня строки.

Все таблицы просто используются для вставок, ни одна из них не выполняет обновление таблицы вообще.У меня вопрос, как мне избежать этих замков?Есть ли какое-либо решение?

1 Ответ

2 голосов
/ 27 мая 2010

Вот решение, которое я нашел.

  • Я установил MySQL 5.1
  • Я поместил следующую переменную в my.cnf innodb_autoinc_lock_mode = 2
  • Перезапустите MySQL все должно быть установлено!

Спасибо всем за помощь.

...