我的服务器有32 32的RAM和Intel Xeon CPU (2.4 CPU的2个处理器)。
SQL Server 2008在其上运行3或4个数据库。
问题是CPU和内存一直在满负荷运行,我最初以为是通过Visual Studio运行的多线程应用程序,但在关闭它们之后,什么都没有改变。有人建议我用SQL进行性能测试,但我不确定这是否能给出我需要的答案。
我看了看活动监视器,我可以看到哪些是昂贵的查询,等等,但我的问题是这些是否足够。我需要向我的销售线索提供导致CPU和内存峰值的原因,活动监视结果是否足够,或者我是否需要使用SQL Server事件探查器并运行跟踪。如有任何建议,欢迎光临。
发布于 2012-02-21 22:56:58
我使用以下查询来查找我的服务器上最昂贵的查询--最初来自here。
希望它能帮上忙!
SELECT DISTINCT TOP 10 t.TEXT QueryName,
s.execution_count AS ExecutionCount,
s.max_elapsed_time AS MaxElapsedTime,
Isnull(s.total_elapsed_time / s.execution_count, 0) AS AvgElapsedTime,
s.creation_time AS LogCreatedOn,
Isnull(s.execution_count / Datediff(s, s.creation_time, Getdate()), 0) AS FrequencyPerSec
FROM sys.dm_exec_query_stats s
CROSS APPLY sys.Dm_exec_sql_text(s.sql_handle) t
ORDER BY s.max_elapsed_time DESChttps://stackoverflow.com/questions/9379610
复制相似问题