Поделиться через


Средства мониторинга производительности и настройки

Область применения:SQL Server

Microsoft SQL Server предоставляет полный набор средств для мониторинга событий в SQL Server и настройки структуры физической базы данных. Выбор средств зависит от типа контроля или настройки, а также от конкретных отслеживаемых событий.

Ниже приведены средства мониторинга и настройки SQL Server:

Инструмент Описание
Встроенные функции Встроенные функции отображают статистику моментальных снимков о действиях SQL Server с момента запуска сервера; эти статистические данные хранятся в предопределенных счетчиках SQL Server. Например, @@CPU_BUSY содержит время выполнения ЦП кода SQL Server; @@CONNECTIONS содержит количество подключений SQL Server или попыток подключения; @@PACKET_ERRORS содержит количество сетевых пакетов, происходящих в подключениях SQL Server.
Инструкции DBCC Инструкции консоли базы данных (DBCC) позволяют просматривать статистику производительности, а также логическую и физическую согласованность базы данных.
Помощник по настройке ядра СУБД (DTA) помощник по настройке ядра СУБД анализирует эффекты производительности инструкций Transact-SQL, выполняемых в базах данных, которые необходимо настроить. Помощник по настройке ядра СУБД дает рекомендации по добавлению, удалению и изменению индексов, индексированных представлений и секционирования.
Журналы ошибок Журнал событий приложения Windows предоставляет общее представление о событиях, происходящих в операционных системах Windows Server и Windows в целом, а также событиях в SQL Server, агент SQL Server и полнотекстовом поиске. Он содержит сведения о событиях в SQL Server, недоступных в другом месте. Сведения в журнале ошибок можно использовать для устранения неполадок, связанных с SQL Server.
Расширенные события Расширенные события — это упрощенная система мониторинга производительности, которая использует очень мало ресурсов производительности. Система расширенных событий имеет три графических пользовательских интерфейса ("Мастер создания сеансов", "Создание сеанса" и "Профилировщик XE"), которые позволяют создавать, изменять, выводить и анализировать данные сеанса.
Связанные с выполнением динамические административные представления и функции (Transact-SQL) Динамические административные представления, связанные с выполнением, позволяют получать сведения, связанные с выполнением.
Динамическая статистика запросов (LQS) Отображает статистические данные об этапах выполнения запроса в режиме реального времени. Эти данные доступны в режиме реального времени, поэтому статистика выполнения чрезвычайно полезна для отладки проблем с производительностью запросов.
Наблюдение за использованием ресурсов (системный монитор) Системный монитор в первую очередь отслеживает использование ресурсов, например количество запросов страниц, используемых диспетчером буферов, позволяя следить за производительностью и активностью сервера с помощью предопределенных объектов и счетчиков или пользовательских счетчиков для мониторинга событий. Системный монитор (монитор производительности в Microsoft Windows NT 4.0) собирает счетчики и показатели, а не данные о событиях (например использование памяти, число активных транзакций, количество блокировок или загрузку ЦП). Для счетчиков можно задавать пороговые значения, при превышении которых операторы будут получать соответствующие уведомления.

Системный монитор работает в операционных системах Microsoft Windows Server и Windows. Он может отслеживать (удаленно или локально) экземпляр SQL Server в Windows NT 4.0 или более поздней версии.

Основное различие между SQL Server Profiler и System Monitor заключается в том, что SQL Server Profiler отслеживает события ядро СУБД, а системный монитор отслеживает использование ресурсов, связанных с процессами сервера.
Открыть диспетчер задач (SQL Server Management Studio) Монитор активности в среде SQL Server Management Studio полезен для кратких обзоров текущей активности и графически отображает сведения о:

— Процессы, выполняемые на экземпляре SQL Server
— заблокированные процессы;
— блокировки;
— пользовательская активность.
Панель мониторинга производительности Панель мониторинга производительности в SQL Server Management Studio помогает быстро определить, существует ли в SQL Server текущее узкие места производительности.
Помощник по настройке запросов (QTA) Функция помощника по настройке запросов (QTA) поможет пользователям использовать рекомендуемый рабочий процесс для поддержания стабильности производительности при обновлении до более новых версий SQL Server, как описано в разделе "Сохранение стабильности производительности во время обновления до более новых сценариев использования SQL Serverхранилище запросов".
Хранилище запросов Хранилище запросов предоставляет подробные сведения о выборе и производительности плана запроса. Оно упрощает устранение неполадок с производительностью, помогая быстро находить разницу в производительности, вызванную изменением плана запроса. Хранилище запросов автоматически собирает журнал запросов, планов и статистики выполнения, сохраняя эти данные для просмотра. Данные разделяются по временным диапазонам, благодаря чему вы можете просматривать закономерности использования и узнавать об изменениях плана запроса на сервере.
Трассировка SQL Хранимые процедуры Transact-SQL, которые создают, фильтруют и определяют трассировку:

sp_trace_create (Transact-SQL)
sp_trace_generateevent (Transact-SQL)
sp_trace_setevent (Transact-SQL)
sp_trace_setfilter (Transact-SQL)
sp_trace_setstatus (Transact-SQL)
SQL Server Distributed Replay Microsoft SQL Server Distributed Replay может использовать несколько компьютеров для воспроизведения данных трассировки, что позволяет имитировать критически важную рабочую нагрузку.
sp_trace_setfilter (Transact-SQL) SQL Server Profiler отслеживает события процесса обработчика, такие как запуск пакета или транзакция, что позволяет отслеживать действия сервера и базы данных (например, взаимоблокировки, неустранимые ошибки или действия входа). Вы можете записать данные SQL Server Profiler в таблицу SQL Server или файл для последующего анализа, а также воспроизвести события, собранные на SQL Server, шаг за шагом, чтобы увидеть, что произошло.
Системные хранимые процедуры (Transact-SQL) Следующие системные хранимые процедуры SQL Server предоставляют мощную альтернативу для многих задач мониторинга:

sp_who (Transact-SQL):
Сообщает информацию о текущих пользователях и процессах SQL Server, включая оператор, выполняемый в данный момент, и о том, заблокирован ли этот оператор.

sp_lock (Transact-SQL):
Предоставляет снимок информации о блокировках, включая идентификаторы объекта и индекса, тип блокировки и тип ресурса, к которому применяется блокировка.

sp_spaceused (Transact-SQL):
Отображает оценку количества места на диске, занятого таблицей (или базой данных).

sp_monitor (Transact-SQL):
отображает статистику, включая загрузку ЦП, использование ввода-вывода и время простоя с момента последнего запуска процедуры sp_monitor .
Флаги трассировки (Transact-SQL) Флаги трассировки отображают информацию об определенной активности на сервере и используются для диагностики проблем или причин недостаточной производительности, например, при взаимоблокировках.

Выбор средства мониторинга

Выбор средства мониторинга зависит от события или вида деятельности, которые нужно отслеживать.

Событие или вид деятельности Расширенные события Профилировщик SQL Server Распределенное воспроизведение Системный монитор Монитор активности Transact-SQL Журналы ошибок Панель мониторинга производительности
Анализ трендов Да Да Да
Воспроизведение записанных событий Да (с одного компьютера) Да (с нескольких компьютеров)
Нерегламентированный мониторинг Да1 Да Да Да Да Да
Формирование предупреждений Да
Графический интерфейс Да Да Да Да Да Да
Применение в пользовательских приложениях Да Да2 Да

1 Использование профилировщика XEvent для среды SQL Server Management Studio
2 Использование системных хранимых процедур SQL Server Profiler.

Средства мониторинга Windows

Кроме того, в операционных системах Windows и Windows Server 2003 имеются следующие средства наблюдения:

Инструмент Описание
Диспетчер задач Отображает краткий обзор процессов и приложений, запущенных в системе.
Монитор производительности Отслеживает системные ресурсы.
Журнал событий приложения Windows Просмотр событий приложения, созданных SQL Server и другими приложениями.
Брандмауэр Windows Брандмауэр Windows имеет возможности мониторинга заблокированного и разрешенного трафика.

Дополнительные сведения об операционных системах Windows и Windows Server см. в документации Windows.