Оглавление:

Как остановить тупик в SQL Server?
Как остановить тупик в SQL Server?

Видео: Как остановить тупик в SQL Server?

Видео: Как остановить тупик в SQL Server?
Видео: Уроки MS SQL Server. Ограничение таблицы 2024, Май
Anonim

Советы по предотвращению тупиковые ситуации

Делать не разрешать какой-либо пользовательский ввод во время транзакций. Избегать курсоры. Хранить сделки как можно короче. Уменьшите количество циклов обмена между вашим приложением и SQL Server с помощью хранимых процедур или путем хранения транзакций в одном пакете

Также вопрос в том, как мы можем уменьшить тупик в SQL Server?

Доступ к объектам в том же порядке

  1. Доступ к объектам в том же порядке.
  2. Избегайте взаимодействия с пользователем в транзакциях.
  3. Делайте транзакции короткими и одним пакетом.
  4. Используйте более низкий уровень изоляции.
  5. Используйте уровень изоляции на основе управления версиями строк.

Кроме того, что вызывает тупик в SQL Server? В Причина каждого Тупик в SQL Server А тупик происходит, когда две (или более) транзакции блокируют друг друга, удерживая блокировки ресурсов, которые также необходимы каждой транзакции. Например: транзакция 1 удерживает блокировку таблицы A. Тупиковые ситуации может включать более двух транзакций, но две - наиболее распространенный сценарий.

Тогда как можно разрешить тупик?

В тупик может быть решено нарушая симметрию.

Два процесса, конкурирующие за два ресурса в противоположном порядке.

  1. Проходит единый процесс.
  2. Последующий процесс должен подождать.
  3. Тупиковая ситуация возникает, когда первый процесс блокирует первый ресурс одновременно с тем, что второй процесс блокирует второй ресурс.

Как вы анализируете тупик в SQL Server?

Проследить тупик события, добавьте Тупик класс событий графа до трассировки. Этот класс событий заполняет столбец данных TextData в трассировке XML-данными о процессе и объектах, участвующих в трассировке. тупик . SQL Server Профилировщик может извлечь XML-документ в тупик XML (.

Рекомендуемые: