Як слідкувати за тупиками


11

Коли ви починаєте виправлення неполадок на SQL Server 2005/2008 і як? Повідомлення вмикається через SSMS через попередження про стан продуктивності SQL Server, об’єкти-> SQLServer: Блокування, Лічильник-> Блокування очікування / сек, Екземпляр: _Усього, попередження, якщо лічильник: піднімається вище значення 3. Це активний спосіб моніторингу його? Яке прийнятне значення? Я б дуже вдячний за вашу допомогу. Дякую!!!

Відповіді:


7

Ви можете використовувати сповіщення про події, щоб отримувати сповіщення щоразу, коли на сервері трапляється тупикова ситуація:

Подивитися:

Додаткові посилання:


3

Перше, що потрібно зробити, - подивитися графік тупикового кута і точно подивитися, що відбувається. Тоді ви можете розглянути ваші параметри, які зазвичай зводяться до а) змінити додаток для стандартизації на порядок блокування об'єктів (наприклад, якщо це можливо з урахуванням логіки програми, складіть угоду зі своїми розробниками завжди блокувати таблиці в алфавітному порядку) або b ) подивіться, чи дійсно ви працюєте на відповідному рівні ізоляції в кожній транзакції.


Згідно з stackoverflow.com/a/112256/14731, послідовне замовлення про блокування не запобігає тупикам.
Гілі

3

Я б хотів із автоматичним відстеженням на сервері двох основних проблем:

  • довгі запити (ви встановлюєте тривалість, довгу для вашого оточення)

  • тупики - перевірте графік тупикової ситуації та блокування: ланцюг тупикових ситуацій

Ви будете отримувати файли слідів щодня, і ви можете стежити за дією - подивіться, чи викликає проблеми якась запланована подія. Більш детальну інформацію про виробництво профілю можна переглянути в цьому запитанні: Використання SQL Profiler у базі даних, яка вже виробляється .



1

System Center Operations Manager (SCOM) з пакетом управління SQL Server може попередити про тупиках , якщо включити ведення журналу для повідомлення 1205. Ви можете включити його за допомогою наступного запиту SQL: EXEC sp_altermessage 1205, 'WITH_LOG', 'true'.

Також дивіться мою відповідь на тему "Чому ім'я об'єкта та ім'я індексу не заповнено в графіку тупикового зв'язку?" для сценарію PowerShell я писав, що буде витягувати інформацію про тупик з буфера подій і записувати графіки тупикового кута у вигляді файлів xdl, які можна відкрити в SQL Management Studio 2012 або вище або переглянути в блокноті, щоб переглянути детальніше.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.