sys.dm_os_memory_objects
傳回目前由 SQL Server 配置的記憶體物件。sys.dm_os_memory_objects 主要是用來分析記憶體使用情況以及識別可能的記憶體遺漏。
資料行名稱 | 資料類型 | 描述 |
---|---|---|
memory_object_address |
varbinary(8) |
記憶體物件的位址。不可為 Null。 |
parent_address |
varbinary(8) |
父記憶體物件的位址。可為 Null。 |
pages_allocated_count |
int |
這個物件所配置的頁數。不可為 Null。 |
creation_options |
int |
僅供內部使用。可為 Null。 |
bytes_used |
bigint |
僅供內部使用。可為 Null。 |
type |
nvarchar(60) |
記憶體物件的類型。 這表示這個記憶體物件所屬的元件,或是記憶體物件的函數。可為 Null。 |
name |
varchar(128) |
僅供內部使用。可為 Null。 |
memory_node_id |
smallint |
這個記憶體物件正在使用之記憶體節點的識別碼。不可為 Null。 |
creation_time |
datetime |
僅供內部使用。NULLABLE。 |
page_size_in_bytes |
int |
這個物件所配置的頁面大小。不可為 Null。 |
max_pages_allocated_count |
int |
這個記憶體物件所配置的最大頁數。不可為 Null。 |
page_allocator_address |
varbinary(8) |
頁面配置器的記憶體位址。不可為 Null。如需詳細資訊,請參閱<sys.dm_os_memory_clerks>。 |
creation_stack_address |
varbinary(8) |
僅供內部使用。可為 Null。 |
sequence_num |
int |
僅供內部使用。可為 Null。 |
權限
需要伺服器的 VIEW SERVER STATE 權限。
備註
記憶體物件是堆積。它們提供的配置比記憶體 Clerk 所提供的配置資料粒度更細。SQL Server 元件使用記憶體物件來取代記憶體 Clerk。記憶體物件使用記憶體 Clerk 頁面配置器介面來配置頁面。記憶體物件不使用虛擬或共用記憶體介面。隨著配置模式的不同,元件可以建立不同類型的記憶體物件,來配置任意大小的頁面。
記憶體物件一般的頁面大小是 8-KB。然而,累加記憶體物件的頁面大小範圍從 512 位元組到 8 千位元組不等。
附註: |
---|
頁面大小不是最大配置。相對的,頁面大小是頁面配置器支援、記憶體 Clerk 實作的配置資料粒度。您可以從記憶體物件要求 16 KB 以上的配置,要求最終會被導引到記憶體節點的多頁配置器。 |
範例
下列範例會傳回各記憶體物件類型配置的記憶體數量。
SELECT SUM (pages_allocated_count * page_size_in_bytes) as 'Bytes Used', type
FROM sys.dm_os_memory_objects
GROUP BY type
ORDER BY 1 DESC;
GO
請參閱
參考
動態管理檢視和函數
SQL Server 作業系統相關動態管理檢視
sys.dm_os_memory_clerks