Share via


sys.dm_os_performance_counters (Transact-SQL)

針對伺服器所維護的每個效能計數器,各傳回一個資料列。 如需有關每個效能計數器的詳細資訊,請參閱<使用 SQL Server 物件>。

資料行名稱

資料類型

說明

object_name

nchar(128)

這個計數器所屬的類別目錄。

counter_name

nchar(128)

計數器的名稱。

instance_name

nchar(128)

計數器的特定執行個體名稱。 通常包含資料庫名稱。

cntr_value

bigint

計數器的目前值。

[!附註]

如果是每秒計數器,這個值就是累計的。 必須以不連續時間間隔取樣值來計算該速率值。 任何兩個連續取樣值之間的差等於所使用的時間間隔速率。

cntr_type

int

Windows 效能架構所定義的計數器類型。 如需有關效能計數器類型的詳細資訊,請參閱 MSDN 上的 WMI 效能計數器類型或您的 Windows Server 文件集。

備註

如果 SQL Server 的安裝執行個體無法顯示 Windows 作業系統的效能計數器,請使用下列 Transact-SQL 查詢來確認效能計數器是否已停用。

SELECT COUNT(*) from sys.dm_os_performance_counters;

如果傳回值為 0 個資料列,這就表示效能計數器已停用。 然後,您應該查看安裝程式記錄並搜尋錯誤 3409「請重新為此執行個體安裝 sqlctr.ini,並確定執行個體登入帳戶具有正確的登錄權限」。這表示效能計數器未啟用。 緊接在 3409 錯誤前面的錯誤應該會指出效能計數器啟用失敗的根本原因。 如需有關安裝程式記錄檔的詳細資訊,請參閱<檢視與讀取 SQL Server 安裝程式記錄檔>。

權限

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

範例

下列範例會傳回效能計數器值。

SELECT object_name, counter_name, instance_name, cntr_value, cntr_type
FROM sys.dm_os_performance_counters;

請參閱

參考

動態管理檢視和函數 (Transact-SQL)

SQL Server 作業系統相關的動態管理檢視 (Transact-SQL)

sys.sysperfinfo (Transact-SQL)