次の方法で共有


sys.dm_os_memory_cache_counters (Transact-SQL)

適用対象: SQL Server Azure Synapse Analytics Analytics Platform System (PDW)

SQL Server のキャッシュの正常性のスナップショットを返します。 sys.dm_os_memory_cache_counters は、割り当てられたキャッシュ エントリ、その使用、キャッシュ エントリのメモリソースに関する実行時情報を提供します。

Note

これを Azure Synapse Analytics または Analytics Platform System (PDW) から呼び出すには、 sys.dm_pdw_nodes_os_memory_cache_countersという名前を使用します。 この構文は、Azure Synapse Analytics のサーバーレス SQL プールでサポートされていません。

列名 データ型 説明
cache_address varbinary(8) 特定のキャッシュに関連付けられているカウンターのアドレス (主キー) を示します。 NULL 値は許可されません。
name nvarchar (256) キャッシュの名前を指定します。 NULL 値は許可されません。
type nvarchar(60) このエントリに関連付けられているキャッシュの型を示します。 NULL 値は許可されません。
single_pages_kb bigint 適用対象: SQL Server 2008 (10.0.x) から SQL Server 2008 R2 (10.50.x)。

割り当てられたシングルページ メモリの量 (KB 単位)。 これは、シングルページ アロケーターを使用して割り当てられたメモリの量です。 キャッシュ用にバッファー プールから直接取得された 8 KB ページを表します。 NULL 値は許可されません。
pages_kb bigint 適用対象: SQL Server 2012 (11.x) 以降。

キャッシュに割り当てられたメモリの量をキロバイト単位で指定します。 NULL 値は許可されません。
multi_pages_kb bigint 適用対象: SQL Server 2008 (10.0.x) から SQL Server 2008 R2 (10.50.x)。

割り当てられている複数ページ メモリの量 (KB 単位)。 メモリ ノードの複数ページ アロケーターを使用することによって割り当てられるメモリの量です。 このメモリは、バッファー プール外に割り当てられ、メモリ ノードの仮想アロケーターを利用します。 NULL 値は許可されません。
pages_in_use_kb bigint 適用対象: SQL Server 2012 (11.x) 以降。

キャッシュに割り当てられ使用中のメモリの量を KB 単位で指定します。 NULL 値が許可されます。 USERSTORE_<*> 型のオブジェクトの値は追跡されません。 これらについては NULL が報告されます。
single_pages_in_use_kb bigint 適用対象: SQL Server 2008 (10.0.x) から SQL Server 2008 R2 (10.50.x)。

使用されている単一ページ メモリの量 (KB 単位)。 NULL 値が許可されます。 この情報は、USERSTORE_<*> 型のオブジェクトについては追跡されず、これらの値は NULL になります。
multi_pages_in_use_kb bigint 適用対象: SQL Server 2008 (10.0.x) から SQL Server 2008 R2 (10.50.x)。

使用されているマルチページ メモリの量 (キロバイト単位)。 許容。 この情報は、USERSTORE_<*> 型のオブジェクトについては追跡されず、これらの値は NULL になります。
entries_count bigint キャッシュ内のエントリの数を示します。 NULL 値は許可されません。
entries_in_use_count bigint 使用されているキャッシュ内のエントリの数を示します。 NULL 値は許可されません。
pdw_node_id int 適用対象: Azure Synapse Analytics、Analytics Platform System (PDW)

このディストリビューションがオンになっているノードの識別子。

アクセス許可

SQL Server と SQL Managed Instance では、VIEW SERVER STATE アクセス許可が必要です。

SQL Database の BasicS0S1 サービス対象、および Elastic Pool のデータベースの場合、サーバー管理者アカウント、Microsoft Entra 管理者アカウント、または ##MS_ServerStateReader##サーバー ロールのメンバーシップが必要です。 他のすべての SQL Database サービス目標では、データベースに対する VIEW DATABASE STATE アクセス許可または ##MS_ServerStateReader## サーバー ロールのメンバーシップのいずれかが必要です。

SQL Server 2022 以降でのアクセス許可

サーバーに対する VIEW SERVER PERFORMANCE STATE アクセス許可が必要です。

関連項目

SQL Server オペレーティングシステム関連の動的管理ビュー (Transact-sql)