sys.dm_os_hosts (Transact-SQL)
Gilt für: SQL Server Azure SQL-Datenbank Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System (PDW)
Gibt alle hosts zurück, die derzeit in einer Instanz von SQL Server registriert sind. Diese Sicht gibt auch die von diesen Hosts verwendeten Ressourcen zurück.
Hinweis
Um dies von Azure Synapse Analytics oder Analytics Platform System (PDW) aufzurufen, verwenden Sie den Namen sys.dm_pdw_nodes_os_hosts. Diese Syntax wird vom serverlosen SQL-Pool in Azure Synapse Analytics nicht unterstützt.
Spaltenname | Datentyp | Beschreibung |
---|---|---|
host_address | varbinary(8) | Die interne Speicheradresse des Hostobjekts. |
type | nvarchar(60) | Der Typ der gehosteten Komponente. Beispiel: SOSHOST_CLIENTID_SERVERSNI= SQL Server Native Interface SOSHOST_CLIENTID_SQLOLEDB = SQL Server Native Client OLE DB Provider SOSHOST_CLIENTID_MSDART = Microsoft Data Access Run Time |
name | nvarchar(32) | Der Name des Hosts. |
enqueued_tasks_count | int | Die Gesamtanzahl der Aufgaben, die dieser Host in Warteschlangen in SQL Server platziert hat. |
active_tasks_count | int | Gesamtanzahl der aktuell ausgeführten Tasks, die von diesem Host in Warteschlangen platziert wurden. |
completed_ios_count | int | Gesamtanzahl der E/A-Vorgänge, die über diesen Host ausgegeben und abgeschlossen wurden. |
completed_ios_in_bytes | bigint | Gesamtanzahl von Bytes der E/A-Vorgänge, die über diesen Host abgeschlossen wurden. |
active_ios_count | int | Gesamtanzahl von E/A-Anforderungen in Verbindung mit diesem Host, die zurzeit auf Beendigung warten. |
default_memory_clerk_address | varbinary(8) | Speicheradresse des diesem Host zugeordneten Arbeitsspeicherclerk-Objekts. Weitere Informationen finden Sie unter sys.dm_os_memory_clerks (Transact-SQL). |
pdw_node_id | int | Gilt für: Azure Synapse Analytics, Analytics Platform System (PDW) Der Bezeichner für den Knoten, auf dem sich diese Verteilung befindet. |
Berechtigungen
Für SQL Server und SQL Managed Instance ist die VIEW SERVER STATE
-Berechtigung erforderlich.
Für SQL-Datenbank Standard-, S0- und S1-Dienstziele sowie für Datenbanken in elastischen Pools ist das Serveradministratorkonto, das Microsoft Entra-Administratorkonto oder die Mitgliedschaft in der ##MS_ServerStateReader##
Serverrolle erforderlich. Für alle anderen SQL-Datenbank-Dienstziele ist entweder die VIEW DATABASE STATE
-Berechtigung für die Datenbank oder die Mitgliedschaft in der ##MS_ServerStateReader##
-Serverrolle erforderlich.
Berechtigungen für SQL Server 2022 und höher
Erfordert die VIEW SERVER PERFORMANCE STATE-Berechtigung auf dem Server.
Hinweise
SQL Server ermöglicht Komponenten, z. B. einen OLE DB-Anbieter, die nicht Teil der ausführbaren SQL Server-Datei sind, Speicher zuzuweisen und an der nicht präventiven Planung teilzunehmen. Diese Komponenten werden von SQL Server gehostet, und alle von diesen Komponenten zugeordneten Ressourcen werden nachverfolgt. Mit dem Hosting kann SQL Server ressourcen, die von Komponenten außerhalb der ausführbaren SQL Server-Datei verwendet werden, besser berücksichtigen.
Kardinalität der Beziehungen
From | Beschreibung | Beziehung |
---|---|---|
sys.dm_os_hosts. default_memory_clerk_address | sys.dm_os_memory_clerks. memory_clerk_address | 1:1 |
sys.dm_os_hosts. host_address | sys.dm_os_memory_clerks. host_address | 1:1 |
Beispiele
Im folgenden Beispiel wird der Gesamtumfang des Arbeitsspeichers, für den von einer gehosteten Komponente ein Commit ausgeführt wurde, bestimmt.
Gilt für: SQL Server 2012 (11.x) und höher. |
SELECT h.type, SUM(mc.pages_kb) AS commited_memory
FROM sys.dm_os_memory_clerks AS mc
INNER JOIN sys.dm_os_hosts AS h
ON mc.memory_clerk_address = h.default_memory_clerk_address
GROUP BY h.type;
Weitere Informationen
sys.dm_os_memory_clerks (Transact-SQL)
Dynamische Verwaltungssichten in Verbindung mit dem SQL Server-Betriebssystem (Transact-SQL)