共用方式為


sys.dm_exec_query_resource_semaphores (Transact-SQL)

傳回目前查詢資源信號狀態的相關資訊。 sys.dm_exec_query_resource_semaphores 會提供一般查詢執行的記憶體狀態,而且可讓您判斷系統是否可以存取足夠的記憶體。 這個檢視可以補充從 sys.dm_os_memory_clerks 取得的記憶體資訊,以提供完整的伺服器記憶體狀態。 sys.dm_exec_query_resource_semaphores 會為一般資源信號傳回一個資料列,並為小型查詢資源信號傳回另一個資料列。

資料行名稱

資料類型

說明

resource_semaphore_id

smallint

資源信號的非唯一識別碼。 一般資源信號為 0,而小型查詢資源信號則為 1。

target_memory_kb

bigint

授與使用目標 (以 KB 為單位)。

max_target_memory_kb

bigint

最大的可能目標 (以 KB 為單位)。 小型查詢資源信號為 NULL。

total_memory_kb

bigint

資源信號擁有的記憶體 (以 KB 為單位)。 如果系統有記憶體不足的壓力,或是如果經常強制授與最小記憶體,這個值可能大於 target_memory_kbmax_target_memory_kb 的值。 總記憶體是可用記憶體和授與記憶體的總和。

available_memory_kb

bigint

新授與的可用記憶體 (以 KB 為單位)。

granted_memory_kb

bigint

授與的總記憶體 (以 KB 為單位)。

used_memory_kb

bigint

授與記憶體的實際使用部分 (以 KB 為單位)。

grantee_count

int

已滿足其授與的使用中查詢數目。

waiter_count

int

等候要滿足授與的查詢數目。

timeout_error_count

bigint

伺服器啟動後逾時錯誤的總數。 小型查詢資源信號為 NULL。

forced_grant_count

bigint

伺服器啟動後強制最小記憶體授與的總數。 小型查詢資源信號為 NULL。

pool_id

int

這個資源信號所屬資源集區的識別碼。

Permissions

需要伺服器的 VIEW SERVER STATE 權限。

備註

使用包含 ORDER BY 或彙總之動態管理檢視的查詢,有可能會增加記憶體耗用量,但也因此可協助它們正在進行疑難排解的問題。

使用 sys.dm_exec_query_resource_semaphores 來進行疑難排解,但是不要在將會使用 SQL Server 未來版本的應用程式中加入它。

資源管理員功能可讓資料庫管理員在資源集區間散發伺服器資源,最多可達 64 個集區。 在 SQL Server 2012 中,每個集區的行為都像是一個小型的獨立伺服器執行個體,而且需要 2 個信號。

請參閱

參考

執行相關的動態管理檢視和函數 (Transact-SQL)

sys.dm_exec_query_memory_grants (Transact-SQL)