sys.dm_os_hosts (Transact-SQL)

Gilt für:SQL ServerAzure SQL-DatenbankAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics 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. Ein auf ein Objekt angewendeter

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;  

Siehe auch

sys.dm_os_memory_clerks (Transact-SQL)
Dynamische Verwaltungssichten in Verbindung mit dem SQL Server-Betriebssystem (Transact-SQL)