sys.dm_os_hosts (Transact-SQL)

SQL Server インスタンスに現在登録されているすべてのホストを返します。このビューでは、ホストで使用されているリソースも返されます。

列名

データ型

説明

host_address

varbinary(8)

ホスト オブジェクトの内部メモリ アドレス。

type

nvarchar(60)

ホストされるコンポーネントの種類。次に例を示します。

SOSHOST_CLIENTID_SERVERSNI = SQL Server ネイティブ インターフェイス

SOSHOST_CLIENTID_SQLOLEDB = SQL Server Native Client OLE DB プロバイダ

SOSHOST_CLIENTID_MSDART = Microsoft Data Access Run Time

name

nvarchar(32)

ホストの名前。

enqueued_tasks_count

int

ホストによって SQL Server のキューに挿入されたタスクの合計数。

active_tasks_count

int

ホストによってキューに挿入されたタスクのうち、現在実行中のタスクの数。

completed_ios_count

int

ホスト経由で発行され、完了した I/O の合計数。

completed_ios_in_bytes

bigint

ホスト経由で完了した I/O の合計バイト数。

active_ios_count

int

現在完了を待機しているホストに関連する I/O 要求の合計数。

default_memory_clerk_address

varbinary(8)

ホストに関連付けられているメモリ クラーク オブジェクトのメモリ アドレス。詳細については、「sys.dm_os_memory_clerks (Transact-SQL)」を参照してください。

権限

サーバーに対する VIEW SERVER STATE 権限が必要です。

説明

SQL Server では、SQL Server の実行可能なコンポーネント以外の OLE DB プロバイダなどのコンポーネントが、メモリを割り当てたりノンプリエンプティブなスケジュールに参加することが許可されます。このようなコンポーネントは SQL Server によってホストされ、このようなコンポーネントによって割り当てられるすべてのリソースは追跡されます。ホスティングによって、SQL Server では SQL Server の外部コンポーネントで使用されるリソースをより正確に把握できます。

リレーションシップの基数

関連元

関連先

リレーションシップ

sys.dm_os_hosts. default_memory_clerk_address

sys.dm_os_memory_clerks. memory_clerk_address

一対一

sys.dm_os_hosts. host_address

sys.dm_os_memory_clerks. host_address

一対一

次の例では、ホストされるコンポーネントによって使用されているメモリの総量を調べます。

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;