MSSQL ,Veritabanı Bazlı CPU Kullanım Oranları
MSSQL instance , veritabanı,sorgu bazlı cpu kullanım oranlarını çıkarabiliriz. Aşağıdaki T_SQL de veritabanı bazlı cpu kullanım oranlarını listeleyebiliriz.
WITH CPU_Kullanım_Oranları AS (SELECT dmpa.DatabaseID , DB_Name(dmpa.DatabaseID) AS [Database] , SUM(dmqs.total_worker_time) AS CPUTimeAsMS FROM sys.dm_exec_query_stats dmqs CROSS APPLY (SELECT CONVERT(INT, value) AS [DatabaseID] FROM sys.dm_exec_plan_attributes(dmqs.plan_handle) WHERE attribute = N'dbid') dmpa GROUP BY dmpa.DatabaseID) SELECT [Database] ,[CPUTimeAsMS] ,CAST([CPUTimeAsMS] * 1.0 / SUM([CPUTimeAsMS]) OVER() * 100.0 AS DECIMAL(5, 2)) AS [CPUTimeAs%] FROM CPU_Per_Db ORDER BY [CPUTimeAs%] DESC;