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;