本文介绍可用于 SQL Server 2016 及更高版本的性能改进和配置选项的列表。
原始产品版本: Windows 上的 SQL Server 2017,SQL Server 2016 原始 KB 编号: 4465518
本文介绍通过各种产品更新和配置选项对 Microsoft SQL Server 2017 和 SQL Server 2016 提供的性能改进和更改。
建议考虑应用这些更新来提高SQL Server实例的性能。 改进程度取决于各种因素,包括工作负载模式、争用点、处理器布局 (处理器组的数量、套接字、NUMA 节点和 NUMA 节点) 中的内核,以及系统中的可用内存量。
SQL Server支持团队使用这些更新和配置更改,为使用包含多个 NUMA 节点和大量处理器的硬件系统的客户工作负载实现合理的性能提升。 将来,支持团队将继续使用其他更新更新本文。
定义:高端系统 “高端系统”通常具有多个套接字,每个套接字有 8 个或更多核心,以及 5 TB 或更多内存。
有关提高 2017 SQL Server 和 2016 SQL Server 性能的建议分为五个表,如下所示:
有关其他上下文,请参阅 常用旋钮来优化繁忙的SQL Server 。
如果启用了跟踪标志,请确保在运行迁移到 SQL Server 2017 或 SQL Server 2016 后查看该文章中的信息。 该文章中列出的许多跟踪标志和配置选项在 2017 SQL Server 和 2016 SQL Server成为默认选项。
查看下表,并在确保SQL Server实例满足 “适用版本和生成范围 ”列中的要求后,在 “跟踪标志 ”列中启用跟踪标志。
在Always On环境中启用具有跟踪标志的修补程序时,请注意,必须在属于可用性组的所有副本上启用修复和跟踪标志。
查看 知识库文章或联机丛书资源 列中的内容,并考虑实施 “建议的操作” 列中的指导。
request_max_memory_grant_percent
min_grant_percent
max_grant_percent
LEGACY_CARDINALITY_ESTIMATION
PARALLEL_REDO_TRAN_TURN
DPT_ENTRY_LOCK
DIRTY_PAGE_TABLE_LOCK
SQL Server 2017 年和 2016 SQL Server在可伸缩性和性能方面进行了多项改进。 2014 SQL Server和 2012 SQL Server 所需的各种配置更改和跟踪标志成为 2017 年和 2016 SQL Server 的默认行为。 下表概述了在 2017 SQL Server 和 2016 SQL Server中实现的所有更改。
查看 “症状” 列中的说明,并应用所需更新 (最好是包含适用环境中的“ 必需更新 ”列中特定修补程序) 的最新更新。 有关相应问题的详细信息,请查看知识库文章。 这些建议不要求你启用其他跟踪标志作为启动参数,除非本文或此表中明确指出了它。 只需应用包含这些修补程序的最新 CU 或 Service Pack 即可获得好处。
注意 “ 必需更新 ”列中的 CU 名称提供解决此问题SQL Server的第一个 CU。 累积更新包含所有修补程序以及与以前的SQL Server更新版本一起包含的所有更新。 如 SQL Server增量服务模型 更新中所述,建议以持续主动节奏安装 最新的累积更新 ,以解决或防止所述问题。 另请注意,从 2017 SQL Server 开始,引入了 适用于 SQL Server 的新式服务模型 ,以便不再提供 Service Pack。
此表是发布SQL Server 2017 年之后累积更新中发布的所有关键改进、建议和代码更改的汇编。 查看“ 症状” 列中的说明,并应用所需的更新 (最好是包含适用环境中的“ 必需更新 ”列中特定修补程序) 的最新更新。 可查看列出的知识库文章,了解有关相应问题的详细信息。
这些建议不要求你启用其他跟踪标志作为启动参数,除非本文或此表中明确指出了它。 只需应用包含这些修补程序的最新累积更新或服务包即可获得权益。 如果在 Linux 上的 SQL Server 中使用 Always On 可用性组,请将 SQL Server 2017 升级到累积更新 8 或更高版本,因为此更新中提供了多项改进。 注意 “ 必需更新 ”列中的 CU 名称提供解决此问题的SQL Server的第一个累积更新。 累积更新包含以前的SQL Server更新版本中包含的所有修补程序和所有更新。 如 SQL Server增量服务模型 更新中所述,我们现在建议以持续主动的节奏安装 最新的累积更新 ,以解决或防止所述问题。 另请注意,从 2017 SQL Server 开始,引入了 适用于 SQL Server 的新式服务模型 ,以便不再提供 Service Pack。