我们有一个带有8个CPU内核和32GB内存的SQL Server 2016。用户时不时地抱怨我们的应用程序很慢,但我们永远无法理解它。所以我试图找到可能的弱点。
SQL Server的CPU工作负载大部分时间为1%-20%。 但有时我有30-50个等待任务。
这可能是个问题吗?
我的CXPACKET是否等到很高?我应该更改MAXDOP和阈值设置吗? 或者你会说我的SQL Server看起来很健康吗?
答案 0 :(得分:0)
可能是CPU的io你是否使用了自动处理器Affinity CPU和IO?或者您是手动处理亲和力吗?
许可的CPU核心数是多少?
您是否有关于每个独立CPU的内存使用率和处理器使用率百分比的统计信息?
最后是的IO将是驱动器上的最后一个问题,你的文件组是否包含与MaxDop x2一样多的文件?
MAXDOP可以限制为单个CPU中的核心数量是标准建议。此外,在并行化之前,parellelizim默认为5成本(不再是有效默认值)之前的最低成本应该会转移到50到200之前的成本高级设置。
您是否为Windows操作预留了一个核心,如果SSIS / SSAS也使用了一个或多个核心,和/或是否未检查提升SQL服务器优先级?