Sobes.tech
Junior — Middle
68

SQL дерекқорында өзара блоктау деген не екенін түсіндіріп бере аласыз ба?

Сұралған компаниялар
КубикТех

AI-дан жауап

sobes.tech AI

Взаимная блокировка (deadlock) в базе данных SQL — это ситуация, когда два или более транзакций блокируют ресурсы, которые нужны друг другу для продолжения работы, и ни одна из них не может продолжить выполнение.

Пример: Транзакция A захватила блокировку на таблице 1 и ждёт блокировку на таблице 2, а транзакция B захватила блокировку на таблице 2 и ждёт блокировку на таблице 1. В итоге обе транзакции «зависают».

Чтобы избежать взаимных блокировок, обычно применяют:

  • упорядочивание доступа к ресурсам;
  • таймауты на ожидание блокировок;
  • использование уровней изоляции транзакций с учётом возможных блокировок.