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


Наблюдение и устранение неполадок в управляемых объектах базы данных

Данный раздел содержит информацию о средствах, которые можно использовать для наблюдения и диагностики управляемых объектов базы данных и сборок, работающих в SQL Server.

События трассировки профайлера

SQL Server предоставляет приложение трассировки SQL и уведомления о событиях для мониторинга событий компонента Database Engine. Записывая указанные события, приложение трассировки SQL помогает диагностировать проблемы производительности, проводить аудит активности базы данных, собирать образцы данных для тестовой среды, отлаживать инструкции и хранимые процедуры Transact-SQL и собирать данные для инструментов анализа производительности. Дополнительные сведения см. в разделах SQL-трассировка и Расширенные события.

Событие

Описание

Класс событий Assembly Load

Используется для наблюдения за запросами на загрузку сборок (успех или неудача).

Класс событий SQL:BatchStarting, Класс событий SQL:BatchCompleted

Предоставляет сведения о пакетах Transact-SQL, которые начали или завершили работу.

Класс событий SP:Starting, Класс событий SP:Completed

Используется для наблюдения за выполнением хранимых процедур Transact-SQL.

Класс событий SQL:StmtStarting, Класс событий SQL:StmtCompleted

Используется для наблюдения за выполнением процедур Transact-SQL и среды CLR.

Счетчики производительности

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

Объект

Описание

SQL Server, объект «Среда CLR»

Общее время выполнения в среде CLR.

Счетчики системного монитора Windows (PERFMON.EXE)

Системный монитор Windows (PERFMON.EXE) имеет несколько счетчиков производительности, которые можно использовать для наблюдения за приложениями интеграции со средой CLR. Счетчики производительности .NET CLR можно отфильтровать по имени процесса «sqlservr» для слежения за приложениями интеграции со средой CLR, выполняющимися в данный момент.

Объект производительности

Описание

SqlServer:CLR

Предоставляет статистику по ЦП сервера.

Исключения .NET CLR

Следит за числом исключений в секунду.

Загрузка .NET CLR

Предоставляет данные о доменах приложений и сборках, загруженных на сервере.

Память .NET CLR

Предоставляет сведения об использовании памяти в среде CLR. Этот объект можно использовать для создания предупреждений, если объем используемой памяти слишком сильно вырос.

Поставщик данных .NET для SQL Server

Следит за числом создаваемых и разрываемых соединений в секунду. Этот объект можно использовать для наблюдения за уровнем активности базы данных.

Представления каталога

Представления каталога возвращают данные, используемые компонентом Database Engine SQL Server. Рекомендуется, чтобы использовались представления каталога, потому что они имеют наиболее универсальный интерфейс к метаданным каталога и предоставляют наиболее эффективный способ для получения, преобразования и представления настроенных форм этих данных. Все доступные для пользователя метаданные каталога предоставляются через представления каталога. Дополнительные сведения см. в разделе Представления каталога (Transact-SQL).

Представление каталога

Описание

sys.assemblies (Transact-SQL)

Возвращает сведения о сборках, зарегистрированных в базе данных.

sys.assembly_references (Transact-SQL)

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

sys.assembly_references (Transact-SQL)

Возвращает информацию обо всех функциях, хранимых процедурах и триггерах, определенных в сборке.

sys.assembly_files (Transact-SQL)

Возвращает сведения о файлах сборок, зарегистрированных в базе данных.

sys.assembly_types (Transact-SQL)

Указывает определяемые пользователем типы (UDT), определенные в сборке.

sys.module_assembly_usages (Transact-SQL)

Указывает сборки, в которых определены модули CLR.

sys.parameter_type_usages (Transact-SQL)

Возвращает информацию о параметрах, которые представляют собой определяемые пользователем типы.

sys.server_assembly_modules (Transact-SQL)

Указывает сборки, в которых определен триггер CLR.

sys.server_triggers (Transact-SQL)

Указывает триггеры DDL уровня сервера на сервере, в том числе триггеры CLR.

sys.type_assembly_usages (Transact-SQL)

Указывает сборки, в которых определены определяемые пользователем типы.

sys.types (Transact-SQL)

Возвращает системные типы и определяемые пользователем типы, зарегистрированные в базе данных.

Динамические административные представления

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

DMV

Описание

sys.dm_clr_appdomains (Transact-SQL)

Возвращает сведения о каждом домене приложения на сервере.

sys.dm_clr_loaded_assemblies (Transact-SQL)

Указывает все управляемые сборки, зарегистрированные на сервере.

sys.dm_clr_properties (Transact-SQL)

Возвращает сведения о внутрипроцессной среде CLR.

sys.dm_clr_tasks (Transact-SQL)

Указывает общее число задач CLR, выполняющихся в настоящий момент.

sys.dm_exec_cached_plans (Transact-SQL)

Возвращает сведения о планах выполнения запросов, кэшируемых SQL Server для более быстрого выполнения запросов.

sys.dm_exec_query_stats (Transact-SQL)

Возвращает суммарную статистику производительности для кэшированных планов запросов.

sys.dm_exec_requests (Transact-SQL)

Возвращает сведения о каждом из запросов, выполняющихся в SQL Server.

sys.dm_os_memory_clerks (Transact-SQL)

Возвращает все клерки памяти, активные в настоящее время в экземпляре SQL Server, в том числе клерки памяти CLR.

См. также

Другие ресурсы

Основные понятия о программировании интеграции со средой CLR