Überwachung und Problembehandlung von verwalteten Datenbankobjekten

Gilt für:SQL Server

Dieses Thema enthält Informationen zu den Tools, die zum Überwachen und Behandeln von Problemen mit verwalteten Datenbankobjekten und Assemblys verwendet werden können, die in SQL Server ausgeführt werden.

Profiler-Ablaufverfolgungsereignisse

SQL Server stellt SQL-Ablaufverfolgungs- und Ereignisbenachrichtigungen bereit, um Ereignisse zu überwachen, die in der Datenbank-Engine auftreten. Durch das Aufzeichnen bestimmter Ereignisse unterstützt Die SQL-Ablaufverfolgung Sie bei der Problembehandlung bei der Leistung, beim Überwachen der Datenbankaktivität, beim Sammeln von Beispieldaten für eine Testumgebung, beim Debuggen von Transact-SQL-Anweisungen und gespeicherten Prozeduren und beim Sammeln von Daten für Leistungsanalysetools. Weitere Informationen finden Sie unter SQL-Ablaufverfolgung und erweiterte Ereignisse.

Ereignis BESCHREIBUNG
Assembly Load-Ereignisklasse Wird verwendet, um Assembly-Ladeanforderungen (Erfolg und Fehler) zu überwachen.
SQL:BatchStarting-Ereignisklasse, SQL:BatchCompleted-Ereignisklasse Stellt Informationen zu Transact-SQL-Batches bereit, die gestartet oder abgeschlossen wurden.
SP:Starting-Ereignisklasse, SP:Completed-Ereignisklasse Wird verwendet, um die Ausführung gespeicherter Transact-SQL-Prozeduren zu überwachen.
SQL:StmtStarting(Ereignisklasse), SQL:StmtCompleted (Ereignisklasse) Wird verwendet, um die Ausführung von CLR- und Transact-SQL-Routinen zu überwachen.

Leistungsindikatoren

SQL Server stellt Objekte und Indikatoren bereit, die vom Systemmonitor verwendet werden können, um Aktivitäten auf Computern zu überwachen, auf denen eine instance SQL Server ausgeführt wird. Ein Objekt ist eine beliebige SQL Server Ressource, z. B. eine SQL Server-Sperre oder ein Windows-Prozess. Jedes Objekt enthält einen oder mehrere Leistungsindikatoren, die verschiedene Aspekte der zu überwachenden Objekte ermitteln. Weitere Informationen finden Sie unter Verwenden von SQL Server-Objekten.

Object BESCHREIBUNG
SQL Server, CLR-Objekt Gesamtausführungszeit in CLR.

Windows-Systemmonitor-Leistungsindikatoren (PERFMON.EXE)

Der Windows-Systemmonitor (PERFMON.EXE) enthält mehrere Leistungsindikatoren, die zur Überwachung der CLR-Integrationsanwendungen verwendet werden können. Die .NET CLR-Leistungsindikatoren können durch den Prozessnamen "sqlservr" gefiltert werden, um CLR-Integrationsanwendungen zu verfolgen, die derzeit ausgeführt werden.

Leistungsobjekt BESCHREIBUNG
SqlServer:CLR Stellt CPU-Statistiken für den Server bereit.
.NET CLR-Ausnahmen Erfasst die Anzahl der pro Sekunde ausgelösten Ausnahmen.
.NET CLR-Ladevorgang Stellt Informationen über die AppDomains und die Assemblys bereit, die im Server geladen sind.
.NET CLR-Speicher Stellt Informationen zur CLR-Speicherauslastung bereit. Dieses Objekt kann verwendet werden, um Warnungen auszugeben, wenn die Speicherauslastung zu groß wird.
.NET-Datenanbieter für SQL Server Erfasst die Anzahl der pro Sekunde hergestellten und getrennten Verbindungen. Dieses Objekt kann zum Überwachen der Datenbankaktivität verwendet werden.

Katalogsichten

Katalogsichten geben Informationen zurück, die von der SQL Server-Datenbank-Engine verwendet werden. Sie sollten Katalogsichten verwenden, da sie die allgemeinste Schnittstelle zu den Katalogmetadaten darstellen und die effizienteste Methode zum Abrufen, Transformieren und Präsentieren dieser Informationen in benutzerdefinierter Form bereitstellen. Alle für Benutzer verfügbaren Katalogmetadaten werden über Katalogsichten verfügbar gemacht. Weitere Informationen finden Sie unter Katalogsichten (Transact-SQL).

Katalogsicht BESCHREIBUNG
sys.assemblies (Transact-SQL) Gibt Informationen über die Assemblys zurück, die in einer Datenbank registriert sind.
sys.assembly_references (Transact-SQL) Identifiziert Assemblys, die auf andere Assemblys verweisen.
sys.assembly_modules (Transact-SQL) Gibt Informationen über alle Funktionen, gespeicherten Prozeduren und Trigger zurück, die in einer Assembly definiert sind.
sys.assembly_files (Transact-SQL) Gibt Informationen über die Assemblydateien zurück, die in der Datenbank registriert sind.
sys.assembly_types (Transact-SQL) Identifiziert die benutzerdefinierten Typen (UDTs), die von einer Assembly definiert sind.
sys.module_assembly_usages (Transact-SQL) Identifiziert die Assemblys, in denen CLR-Module definiert sind.
sys.parameter_type_usages (Transact-SQL) Gibt Informationen über Parameter zurück, die benutzerdefinierte Typen sind.
sys.server_assembly_modules (Transact-SQL) Identifiziert die Assembly, in der CLR-Trigger definiert ist.
sys.server_triggers (Transact-SQL) Identifiziert die DDL-Trigger auf Serverebene auf einem Server, einschließlich der CLR-Trigger.
sys.type_assembly_usages (Transact-SQL) Identifiziert die Assemblys, in denen benutzerdefinierten Typen definiert sind.
sys.types (Transact-SQL) Gibt das System und die benutzerdefinierten Typen zurück, die in der Datenbank registriert sind.

Dynamische Verwaltungssichten

Dynamische Verwaltungssichten (DMVs) und -funktionen geben Serverstatusinformationen zurück, mit denen der Zustand einer Serverinstanz überwacht, Probleme diagnostiziert und die Leistung optimiert werden kann. Weitere Informationen finden Sie unter Dynamische Verwaltungssichten und -funktionen (Transact-SQL).

DMV BESCHREIBUNG
sys.dm_clr_appdomains (Transact-SQL) Stellt Informationen zu jeder Anwendungsdomäne auf dem Server bereit.
sys.dm_clr_loaded_assemblies (Transact-SQL) Identifiziert jede auf dem Server registrierte verwaltete Assembly.
sys.dm_clr_properties (Transact-SQL) Gibt Informationen zur gehosteten CLR zurück.
sys.dm_clr_tasks (Transact-SQL) Identifiziert alle CLR-Tasks, die gerade ausgeführt werden.
sys.dm_exec_cached_plans (Transact-SQL) Gibt Informationen zu den Abfrageausführungsplänen zurück, die von SQL Server für eine schnellere Abfrageausführung zwischengespeichert werden.
sys.dm_exec_query_stats (Transact-SQL) Gibt die Aggregatleistungsstatistik für zwischengespeicherte Abfragepläne zurück.
sys.dm_exec_requests (Transact-SQL) Gibt Informationen zu jeder Anforderung zurück, die innerhalb SQL Server ausgeführt wird.
sys.dm_os_memory_clerks (Transact-SQL) Gibt alle derzeit im SQL Server instance aktiven Speicherverwaltungen zurück, einschließlich CLR-Speicherverwaltungen.

Weitere Informationen

Programmierkonzepte für die Common Language Runtime (CLR)-Integration