|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||
11.2. Мониторинг активности пользователей11.2.1. Применение Activity MonitorActivity Monitor, мониторинг пользовательских подключений к SQL Server 2005, вкладки вкладке Process Info, Locks by Process, Locks by Object Очень часто возникает необходимость выяснить, какие пользователи в данный момент подключены к SQL Server, с какими объектами они работают и какие операции выполняют. Самый простой способ для этого — воспользоваться консолью Activity Monitor, которая встроена в SQL Server Management Studio. Найти ее можно в контейнере Management (Управление) в Object Explorer. В консоли Activity Monitor предусмотрено три вкладки: q на вкладке Process Info (Информация о процессах) вы можете просмотреть информацию об установленных к SQL Server подключениях. Для каждого из процессов можно просмотреть последнюю выполненную команду (пункт Details (Подробно) контекстного меню) и принудительно закрыть это подключение (команда KILL). Возможности отправить пользователю предупреждающее сообщение, которая была в SQL Server 2000, больше нет. Обратите внимание, что на самом деле установленных подключений намного больше. Просто все системные подключения по умолчанию скрыты. Чтобы просмотреть все подключения, нужно нажать кнопку Filter (Фильтр) и снять флажок Apply Filter (Применить фильтр) (при помощи этой кнопки можно также настроить свой фильтр). Администраторам рекомендуется заглядывать на эту вкладку с определенной периодичностью, например, раз в день. Главное, что вас должно интересовать, — это информация в столбцах Login Time (время входа на сервер) и Last Batch (последний выполненный пакет). Для удобства можно отсортировать записи по этим столбцам. Если какое-то пользовательское соединение живет уже несколько дней, а последняя команда была выполнена достаточно давно, то, вполне возможно, что это "мертвый процесс". Такие процессы могут оставаться, когда приложения пользователей завершили работу некорректно. Задача администратора — удалить мертвые процессы, чтобы освободить системные ресурсы (а возможно, и снять блокировки с объектов базы данных); q на вкладке Locks by Process (Блокировки по процессам) показаны все блокировки, которые применены к объектам баз данных определенным процессом. К сожалению, здесь можно просмотреть информацию только для одного процесса, выбрав его (но номеру) в верхней части вкладки. Вкладкой Locks by Process приходится пользоваться редко, обычно только для целей диагностики каких-либо проблем; q на вкладке Locks by Object (Блокировки по объектам) вы можете просмотреть блокировки, которые применены к конкретному объекту. Иногда возникает ситуация, когда какой-то пользователь (обычно даже не подозревая об этом) в ходе выполнения какой-либо операции в своем приложении накладывает блокировку на объект базы данных и не снимает ее (например, по причине сбоя приложения). Как правило, о такой ситуации администратора оповещают телефонные звонки других пользователей. Задача администратора — найти на этой вкладке нужный объект, определить номер процесса, который владеет блокировкой, и по этому номеру на вкладке Process Info вручную завершить работу процесса.
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||
Получить учебные материалы по этому курсу |
||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||