sys.dm_os_memory_clerks (Transact-SQL)
傳回 SQL Server 執行個體中所有目前作用中記憶體 Clerk 集。
資料行名稱 |
資料類型 |
說明 |
---|---|---|
memory_clerk_address |
varbinary(8) |
指定記憶體 Clerk 的唯一記憶體位址。 這是主索引鍵資料行。 不可為 Null。 |
型別 |
nvarchar(60) |
指定記憶體 Clerk 的類型。 每一個 Clerk 都有特定類型,例如 CLR Clerks MEMORYCLERK_SQLCLR。 不可為 Null。 |
name |
nvarchar(256) |
指定這個記憶體 Clerk 的內部指派名稱。 元件可以有特定類型的數個記憶體 Clerk。 元件可選擇使用特定名稱來識別相同類型的記憶體 Clerk。 不可為 Null。 |
memory_node_id |
smallint |
指定記憶體節點的識別碼。 不可為 Null。 |
pages_kb |
bigint |
指定這個記憶體 Clerk 的已配置分頁記憶體數量 (以 KB 為單位)。 不可為 Null。 |
virtual_memory_reserved_kb |
bigint |
指定記憶體 Clerk 所保留的虛擬記憶體數量。 不可為 Null。 |
virtual_memory_committed_kb |
bigint |
指定記憶體 Clerk 所認可的虛擬記憶體數量。 已認可的記憶體數量一律小於已保留的記憶體數量。 不可為 Null。 |
awe_allocated_kb |
bigint |
指定鎖定在實體記憶體中且未由作業系統移出分頁的記憶體數量 (KB)。 不可為 Null。 |
shared_memory_reserved_kb |
bigint |
指定記憶體 Clerk 所保留的共用記憶體數量。 記憶體數量已保留給共用記憶體和檔案對應使用。 不可為 Null。 |
shared_memory_committed_kb |
bigint |
指定記憶體 Clerk 認可的共用記憶體數量。 不可為 Null。 |
page_size_in_bytes |
bigint |
指定這個記憶體 Clerk 的頁面配置資料粒度。 不可為 Null。 |
page_allocator_address |
varbinary(8) |
指定頁面配置器的位址。 這個位址在記憶體 Clerk 中是唯一的,可用於 sys.dm_os_memory_objects,以尋找繫結這個 Clerk 的記憶體物件。 不可為 Null。 |
host_address |
varbinary(8) |
指定這個記憶體 Clerk 之主機的記憶體位址。 如需詳細資訊,請參閱<sys.dm_os_hosts (Transact-SQL)>。 Microsoft SQL Server Native Client 之類的元件是透過主機介面存取 SQL Server 記憶體資源。 0x00000000 = 記憶體 Clerk 屬於 SQL Server。 不可為 Null。 |
權限
需要伺服器的 VIEW SERVER STATE 權限。
備註
SQL Server 記憶體管理員是由三層階層組成。 階層底端是記憶體節點。 中層級是由記憶體 Clerk、記憶體快取和記憶體集區所組成。 最上層是由記憶體物件組成。 這些物件通常用在 SQL Server 的執行個體中配置記憶體。
記憶體節點為低階配置器提供介面和實作。 在 SQL Server 內,只有記憶體 Clerk 可存取記憶體節點。 記憶體 Clerk 存取記憶體節點介面來配置記憶體。 記憶體節點也追蹤使用 Clerk 配置的記憶體來進行診斷。 配置大量記憶體的每一個元件必須建立它自己的記憶體 Clerk,並使用 Clerk 介面來配置它的所有記憶體。 元件經常在啟動 SQL Server 時建立其對應的 Clerk。
相容性支援
在 SQL Server 2012 中,下列資料行已重新命名。
先前的資料行名稱 |
新的資料行名稱 |
---|---|
single_pages_kb |
pages_kb |
在 SQL Server 2012 中,已經移除了 multi_pages_kb 資料行。
請參閱
參考
SQL Server 作業系統相關的動態管理檢視 (Transact-SQL)
sys.dm_os_sys_info (Transact-SQL)
sys.dm_exec_query_memory_grants (Transact-SQL)
sys.dm_exec_requests (Transact-SQL)