Поиск и устранение неисправностей мертвой блокировки в SQL-сервере 2008

Да, вы можете использовать все, что хотите

foreach ($sql2htmlLists as $key => $value){

}

Но я предлагаю вам использовать правильные переменные. И попытаться сбросить эти переменные в конце цикла, чтобы избежать конфликтов.

16
задан Jeff 4 December 2016 в 00:12
поделиться

2 ответа

Записи заблокируют чтения на SQL Server, если Вам не включили управление версиями строки. Необходимо использовать sp_who2 хранимая процедура и трассировка SQL Profiler. sp_who2 скажет Вам, которых блокируют процессы, который, и профилировщик скажет Вам, чем последний оператор был для процесса блокирования.

7
ответ дан 30 November 2019 в 22:55
поделиться

Если Вы не возражаете против грязных чтений, можно попытаться поместить (NOLOCK) после имен таблиц в Запросах Select. Компромисс здесь - то, что Вам не гарантируют большинства актуальных данных как ОБНОВЛЕНИЮ, и операторы INSERT, в настоящее время выполняющиеся, проигнорированы.

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

Кроме того, взгляните на http://www.sql-server-performance.com/tips/deadlocks_p1.aspx

-4
ответ дан 30 November 2019 в 22:55
поделиться
Другие вопросы по тегам:

Похожие вопросы: