Информацията за блокиране може да бъде заснета в регистъра за грешки на SQL Server или чрез използване на Profiler / Server Side Trace.
Как да наблюдавам блокиранията на SQL Server?
Преглед на графично представяне на събитието в застой
- Отворете събитието без прекъсване в Event Viewer.
- В раздела Общи отидете на секцията за xml отчет за блокиране на SQL Server и след това копирайте текста в маркера за блокиране (включително началния и крайния маркер) в текстов редактор, като Notepad или Visual Studio Code.
- Запазете файла като.
Как SQL Server се справя със застой?
Задайте приоритети за блокиране с помощта на променливата на сесията SET DEADLOCK_PRIORITY. Ако зададете приоритет на блокиране, SQL Server убива сесията с най-нисък приоритет. Използвайте обработката на грешки с помощта на блоковете try-catch Можете да хванете грешката в застой и да стартирате отново транзакцията в случай на жертва на безизходица.
Заключването на SQL Server заключено ли е?
Възниква грешка „Транзакцията беше блокирана“ когато две или повече сесии чакат да получат заключване на ресурс, който вече е заключен от друга сесия в същата блокираща верига Като в резултат нито една от сесиите не може да бъде завършена и SQL Server трябва да се намеси, за да разреши този проблем. … Повторете транзакцията.
Как да проверите дали има някакви ключалки в SQL Server?
За да получите информация за заключвания в SQL Server Database Engine, използвайте sys. dm_tran_locks динамичен изглед за управление.