Freigeben über


sys.dm_os_hosts (Transact-SQL)

Gibt alle Hosts zurück, die zurzeit in einer Instanz von SQL Server registriert sind. Diese Sicht gibt auch die von diesen Hosts verwendeten Ressourcen zurück.

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

Gesamtanzahl der Tasks, die von diesem Host in Warteschlangen in SQL Server platziert wurden.

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).

Berechtigungen

Erfordert die VIEW SERVER STATE-Berechtigung auf dem Server.

Hinweise

SQL Server lässt Komponenten, z. B. einen OLE DB-Anbieter, die nicht Teil der ausführbaren Datei von SQL Server sind, Arbeitsspeicher zuordnen und an nicht präemptiven Planungen teilnehmen. Diese Komponenten werden von SQL Server gehostet, und alle von diesen Komponenten zugeordneten Ressourcen werden nachverfolgt. Als Host kann SQL Server die Ressourcen besser berücksichtigen, die von Komponenten außerhalb der ausführbaren Datei von SQL Server verwendet werden.

Kardinalität der Beziehungen

Von

In

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.

SELECT h.type, SUM(single_pages_kb + multi_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;