Dynamische Verwaltungssichten und Funktionen (Transact-SQL)

Dynamische Verwaltungssichten und -funktionen geben Serverstatusinformationen zurück, mit denen der Zustand einer Serverinstanz überwacht, Probleme diagnostiziert und die Leistung optimiert werden kann.

Wichtiger HinweisWichtig

Dynamische Verwaltungssichten und -funktionen geben interne, implementierungsspezifische Statusdaten zurück. Die Schemas und die zurückgegebenen Daten können in zukünftigen Versionen von SQL Server geändert werden. Deshalb kann es sein, dass dynamische Verwaltungssichten und -funktionen in zukünftigen Versionen nicht mit den dynamischen Verwaltungssichten und -funktionen in dieser Version kompatibel sind. In zukünftigen Versionen von SQL Server erweitert Microsoft möglicherweise die Definition der dynamischen Verwaltungssichten, indem am Ende der Spaltenliste z.B. Spalten hinzugefügt werden. Von der Verwendung der Syntax SELECT * FROM dynamic_management_view_name im Produktionscode wird abgeraten, da sich die Anzahl der zurückgegebenen Spalten möglicherweise ändert und Ihre Anwendung dadurch beschädigt werden kann.

Es gibt zwei Arten von dynamischen Verwaltungssichten und -funktionen:

  • Dynamische Verwaltungssichten und -funktionen mit Serverbereich. Sie erfordern die VIEW SERVER STATE-Berechtigung auf dem Server.

  • Dynamische Verwaltungssichten und -funktionen mit Datenbankbereich. Sie erfordern die VIEW DATABASE STATE-Berechtigung für die Datenbank.

Abfragen von dynamischen Verwaltungssichten

Auf dynamische Verwaltungssichten kann in Transact-SQL-Anweisungen mithilfe zweiteiliger, dreiteiliger oder vierteiliger Namen verwiesen werden. Auf dynamische Verwaltungsfunktionen kann andererseits in Transact-SQL-Anweisungen mithilfe zweiteiliger oder dreiteiliger Namen verwiesen werden. Auf dynamische Verwaltungssichten und -funktionen kann in Transact-SQL-Anweisungen nicht mithilfe einteiliger Namen verwiesen werden.

Alle dynamischen Verwaltungssichten und -funktionen sind im sys-Schema vorhanden und verwenden die Benennungskonvention dm_*. Wenn Sie eine dynamische Verwaltungssicht oder -funktion verwenden, müssen Sie vor dem Namen der Sicht oder Funktion das sys-Schema als Präfix einfügen. Führen Sie z. B. die folgende Abfrage aus, um die dynamische Verwaltungssicht dm_os_wait_stats abzufragen:

SELECT wait_type, wait_time_ms

FROM sys.dm_os_wait_stats;

GO

Erforderliche Berechtigungen

Zum Abfragen einer dynamischen Verwaltungssicht oder -funktion sind die SELECT-Berechtigung für das Objekt und die VIEW SERVER STATE- oder VIEW DATABASE STATE-Berechtigung erforderlich. Auf diese Weise können Sie den Zugriff eines Benutzers oder eines Anmeldenamens selektiv auf dynamische Verwaltungssichten und -funktionen einschränken. Dazu erstellen Sie zunächst den Benutzer in master und verweigern dem Benutzer dann die SELECT-Berechtigung für die dynamischen Verwaltungssichten oder -funktionen, auf die er keinen Zugriff haben soll. Der Benutzer kann dann diese dynamischen Verwaltungssichten oder -funktionen unabhängig vom Datenbankkontext des Benutzers nicht auswählen.

HinweisHinweis

DENY hat Vorrang. Daher kann ein Benutzer, dem die VIEW SERVER STATE-Berechtigung erteilt, aber die VIEW DATABASE STATE-Berechtigung verweigert wurde, zwar Informationen auf Serverebene, aber keine Informationen auf Datenbankebene anzeigen.

In diesem Abschnitt

Dynamische Verwaltungssichten und -funktionen wurden in die folgenden Kategorien unterteilt.