沿 1 个服务器上的所有 sql 实例划分 CPU 的最佳方法

use*_*459 3 sql-server cpu

我有一台带有 40 个 CPU(超线程)和 2 个 NUMA 节点的物理服务器。在这台服务器上,我安装了 20 个 SQL Server 实例,我需要确保每个实例都分配了一些专用的 CPU。

问题是有时一个或多个实例正在使用所有 CPU,然后大约 4 或 5 个实例因 CPU 资源不足而出现故障。

在所有实例之间分配 CPU 以便每个实例至少有一些 CPU 的最佳方法是什么?

Wor*_*DBA 5

您可以通过右键单击实例并选择Properties -> Processors来配置 SQL Server 实例使用的处理器关联:

处理器亲和力

将处理器分配给特定线程以消除处理器重新加载并减少跨处理器的线程迁移。有关详细信息,请参阅关联掩码服务器配置选项。

这将使您能够为每个实例分配特定的处理器。虽然要做到这一点需要不断的关注和调整,所以通常我不建议这样做,除非你真的知道你在做什么。

如果您决定继续,那么我强烈建议您在尝试之前阅读有关亲缘掩码服务器配置选项的信息,您也可以阅读TechNet 上的快速教程,并且可以在Microsoft 支持上找到一些基本指南。