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

Изменения: 17 июля 2006 г.

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

Ниже приведены средства контроля и настройки SQL Server.

Средство

Описание

Знакомство с приложением SQL Server Profiler

Приложение SQL Server Profiler отслеживает события процесса ядра, например запуск пакета или транзакции, позволяя отслеживать работу сервера и базы данных (взаимоблокировки, неустранимые ошибки, вход в систему). Чтобы установить точный ход событий, данные SQL Server Profiler помещаются в файл или таблицу экземпляра SQL Server для последующего анализа. Кроме того, предусмотрено пошаговое воспроизведение событий в экземпляре SQL Server.

Мониторинг использования ресурсов (системный монитор)

Системный монитор в первую очередь отслеживает использование ресурсов, например количество используемых запросов страниц диспетчера буферов, позволяя отслеживать работу и производительность сервера с помощью предопределенных объектов и счетчиков или пользовательских счетчиков. Системный монитор (монитор производительности в Microsoft Windows NT 4.0) собирает счетчики и показатели, а не данные о событиях (например использование памяти, число активных транзакций, количество блокировок или загрузку ЦП). Для счетчиков можно задавать пороговые значения, при превышении которых операторы будут получать соответствующие уведомления.

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

Основное отличие между приложением SQL Server Profiler и системным монитором состоит в том, что приложение SQL Server Profiler отслеживает события ядра СУБД, тогда как системный монитор отслеживает использование ресурсов, связанных с процессами сервера.

Как открыть монитор активности (среда SQL Server Management Studio)

В среде SQL Server Management Studio монитор активности графически отображает следующие сведения:

  • процессы, запущенные на экземпляре SQL Server;
  • заблокированные процессы;
  • блокировки;
  • пользовательскую активность.

Этот монитор удобно использовать для нерегламентированных представлений текущей деятельности.

Знакомство с трассировкой SQL

Хранимые процедуры Transact-SQL, создающие, фильтрующие и определяющие трассировку:

Контроль за журналом ошибок

Журнал событий приложений Windows обеспечивает общую картину событий, происходящих в операционной системе Windows Server или Windows как в едином целом, событий в экземпляре SQL Server, агенте SQL Server, а также полнотекстовый поиск. Сведения о событиях в экземпляре 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.

DBCC (Transact-SQL)

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

Функции (Transact-SQL)

Встроенные функции отображают статистику моментального снимка по активности SQL Server с момента запуска сервера. Эта статистика хранится в предопределенных счетчиках SQL Server. Например, счетчик @@CPU_BUSY содержит количество времени, затраченное ЦП на выполнение кода SQL Server, счетчик @@CONNECTIONS содержит число соединений или попыток соединений SQL Server, а @@PACKET_ERRORS содержит количество сетевых пакетов в соединениях SQL Server.

Флаги трассировки (Transact-SQL)

Флаги трассировки отображают сведения об определенных видах деятельности внутри сервера и используются для диагностики неполадок или причин недостаточной производительности (например при цепочках взаимоблокировок).

Настройка физической структуры базы данных

Помощник по настройке ядра СУБД анализирует то, как инструкции Transact-SQL, которые применяются к настраиваемым базам данных, воздействуют на производительность. Помощник по настройке ядра СУБД дает рекомендации по добавлению, удалению и изменению индексов, индексированных представлений и секционирования.

Выбор средства контроля

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

Событие или вид деятельности Приложение SQL Server Profiler Системный монитор Монитор активности Язык Transact-SQL Журналы ошибок

Анализ трендов

Да

Да

 

 

 

Воспроизведение записанных событий

Да

 

 

 

 

Нерегламентированный контроль

Да

 

Да

Да

Да

Формирование предупреждений

 

Да

 

 

 

Графический интерфейс

Да

Да

Да

 

Да

Применение в пользовательских приложениях

Да 1

 

 

Да

 

1 С помощью системных хранимых процедур приложения SQL Server Profiler.

Средства контроля Windows

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

Средство Описание

Диспетчер задач

Отображает краткий обзор процессов и приложений, запущенных в системе.

Агент мониторинга сети

Отслеживает сетевой трафик.

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

Журнал изменений

Версия Журнал

17 июля 2006 г.

Изменения

Удален раздел, который описывает использование протокола SNMP (Simple Network Management Protocol) для контроля SQL Server 2005. SQL Server более не поддерживает протокол SNMP.