Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Statystyki użycia procesora w bazach danych SQL Server

Biodro>

Ogólnie W instancji SQL Server znajduje się wiele baz danych. Uruchamianie baz danych w tej samej instancji jest bardzo ważne dla licencji i konsolidacji SQL Server.

Gdy wiele baz danych działa w tej samej instancji SQL Server, wykorzystanie zasobów baz danych jest bardzo krytyczne.

Jeśli jakakolwiek baza danych zużywa dużo zasobów procesora, powinniśmy monitorować bazę danych i wyjaśniać, dlaczego ta baza danych zużywa więcej zasobów procesora niż inne.

Możemy dowiedzieć się, że wszystkie zasoby procesora bazy danych wykorzystują następujący skrypt.

WITH DB_CPU_STATS_ON_INSTANCE
AS
(SELECT DatabaseID, DB_Name(DatabaseID) AS [DatabaseName], SUM(total_worker_time) AS [CPU_Time_Ms]
FROM sys.dm_exec_query_stats AS qs
CROSS APPLY (SELECT CONVERT(int, value) AS [DatabaseID] 
FROM sys.dm_exec_plan_attributes(qs.plan_handle)
WHERE attribute = N'dbid') AS F_DB
GROUP BY DatabaseID)
SELECT ROW_NUMBER() OVER(ORDER BY [CPU_Time_Ms] DESC) AS [row_num],
DatabaseName, [CPU_Time_Ms], 
CAST([CPU_Time_Ms] * 1.0 / SUM([CPU_Time_Ms]) OVER() * 100.0 AS DECIMAL(5, 2)) AS [CPUPercent]
FROM DB_CPU_STATS_ON_INSTANCE
WHERE DatabaseID > 4 
AND DatabaseID <> 32767 
ORDER BY row_num OPTION (RECOMPILE);



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Przechowywanie pliku w bazie danych, a nie w systemie plików?

  2. Konwertuj float na varchar w SQL Server bez notacji naukowej

  3. SQL Server 2016:Wstaw dane

  4. Jak używać klauzuli Where w instrukcji Select w SQL Server — samouczek SQL Server / TSQL, część 109

  5. Co to jest operator logiczny w SQL Server — samouczek SQL Server / TSQL część 123