SQL Server 2016 服务包 2 发布信息

适用于: SQL Server 2016 DeveloperSQL Server 2016 EnterpriseSQL Server 2016 Enterprise Core

本文包含安装 Microsoft SQL Server 2016 服务包 2 (SP2) 之前要阅读的重要信息。它描述了如何获取服务包、服务包中包含的修补程序列表、已知问题以及产品的版权归属列表。备注本文用作单一信息源,用于查找与此服务包相关的所有文档。它包括您以前在发行说明和 Readme.txt 文件中找到的所有信息。

更多信息


如何获取 SQL Server 2016 SP2

SQL Server 2016 SP2、微软 SQL Server 2016 SP2 Express 和 Microsoft SQL Server 2016 SP2 功能包可在以下 Microsoft 下载中心网站进行手动下载和安装。

SQL 服务器 2016 SP2 Download 立即下载软件包。
SQL 服务器 2016 SP2 快递 Download 立即下载软件包。
微软 SQL 服务器 2016 SP2 功能包 Download 立即下载软件包。
备注安装服务包后,SQL Server 服务版本应为13.0.5026.0 Microsoft SQL Server 2016 服务包是累积更新。SQL Server 2016 SP2 将 SQL Server 2016 的所有版本和服务级别升级到 SQL Server 2016 SP2。

SQL Server 2016 SP2 中包含的修补程序列表

Microsoft SQL Server 2016 服务包是累积更新。SQL Server 2016 SP2 将 SQL Server 2016 的所有版本和服务级别升级到 SQL Server 2016 SP2。除了本文中列出的修补程序外,SQL Server 2016 SP2 还包括SQL Server 2016 累积更新 1 (CU1)SQL Server 2016 SP1 CU8中包含的修补程序。有关 SQL Server 2016 中可用的累积更新的详细信息,请参阅SQL Server 2016 生成版本备注 
  • 此处未记录的其他修补程序也可能包含在服务包中。
  • 发布更多文章时,此列表将更新。

有关 SQL Server 2016 SP2 中修复的 Bug 的详细信息,请访问以下 Microsoft 知识库文章。

VSTS 错误号 知识库文章编号 说明
11032173 4048942 修复:在 SQL Server 重新启动后为"已停止的 IOCP 侦听器"和"不生成 IOCP 侦听器"生成的内存转储
3507192 4051361 在 SQL Server 2017 CU3 和 SQL Server 2016 SP2 中添加的查询执行计划中添加的优化器行目标信息
9912272 4051360 修复:将标量用户定义函数的执行统计信息添加到 SQL Server 2016 SP2 中的 Showplan XML 文件中
10937127 4051359 修复:SQL Server 在 SQL Server 2016 中的扩展事件会话中捕获表值参数时,即使未启用收集语句或数据流,SQL Server 内存也不足
5660983 4051358 更新将新列添加到 SYS。DM_EXEC_QUERY_STATS DMV 在 SQL 服务器 2016 SP2
10077001 4052138 修复:在 SQL Server 2016 中使用高 DOP 运行时,并行查询速度变慢
10732726 4052137 提高 SQL Server 2016 SP2 中分区表的查询性能
11086264 4052136 修复:SQL 服务器审核事件无法写入安全日志
10696815 4038419 更新将 CPU 超时设置添加到 SQL Server 2016 和 2017 中的资源调速器工作组请求_MAX_CPU_TIME_SEC
9443219 4038418 更新以向 SQL Server 2016 SP2 中的 DMV sys.dm_sql_引用_实体添加新列
8025121 3157575 修复:当表包含 SQL Server 中的稀疏列集时,复制数据库向导失败
7990665 3162858 SQL Server 中的日志备份过程失败时,"日志备份链已中断"错误
10727149 3170116 修复:运行优化嵌套循环联接所需的内存授予未反映在 SQL Server 中的 Showplan XML 中
10871961 4013128 修复:当 SQLCLR UDT 用作 SQL RPC 调用的存储过程参数时,降低性能并长时间等待 CLR_AUTO_EVENT 和 CMEMTHREAD
10697582 4014756 修复:SQL 服务器探查器在 SQL Server 中的远程过程调用执行时无法混淆 sp_setapprole
10871974 4016949 从 SQL Server 2012 SP4 和 SQL Server 2016 SP2 开始的 SQL 服务器统一显示方案架构
10973046 4046918 修复:当 SQL CLR 函数通过 SQL Server 2016 和 2017 中的模拟调用调用 Transact-SQL 语句时,执行失败

11032146

4045795 修复:在 AAG 中线程池耗尽和 CMEMTHREAD 争用,在 SQL Server 2016 和 2017 中进行数据种子设定
10872004 4056008 FIX:"sp_特殊_列"在 SQL Server 2016 中返回不正确的结果
10726760 4052129 SQL Server 2016 和 2017 中的手动更改跟踪清理过程更新
10065114 3136496 修复:当查询通过 SQL Server 2016 中的同义词引用 SQLCLR 函数时,将发生访问冲突
9832539 4039846 修复:尝试...CATCH 块在 SQL Server 2016 中某些内存 OLTP 错误处理方案中回滚过多事务
10727775 4041809 更新添加了对 SQL Server 2016 和 2017 中创建统计和更新数据语句的 MAXDOP 选项的支持
6884989 4041811 修复:在 SQL Server 2016 和 2017 中延迟增量统计信息的自动更新

10385772

4041814 改进 DMV 中的 tempdb 溢出诊断,以及 SQL Server 2017 和 SQL Server 2016 SP2 中的扩展事件

9653457

4041817 更新使 XML 显示计划能够提供 SQL Server 2016 和 2017 中查询优化期间使用的统计信息列表

10817173

4040276 修复:tempdb 数据库上的间接检查点会导致 SQL Server 2016 或 2017 中的"不生成计划程序"错误
10914360 4042415 修复:当许多连接在 SQL Server 2016 中同时访问单用户模式数据库时,死锁发生
10704351 4042788 修复:即使 SQL Server 实例上的所有其他数据库未加密,tempdb 系统数据库(sys.database)仍加密
10456101 4046914 修复:在 SQL Server 2016 和 2017 中的显示计划 XML 中添加 CXPACKET 等待类型
8846046 4046909 修复:在 SQL Server 2016 SP1 快速版中执行联机事务时,LogPool 缓存 MEMORYCLERK_SQLLOGPOOL 会消耗更多内存
10761398 4046902 修复:"当您尝试将 TempDB 文件的初始大小设置为大于 1024 MB 的值时,错误"超过 1024 MB"
10571989 4046885 修复:SQL Server 2016 设置页面包含不安全的工具下载链接
9956170 4018930 更新将"CLR 严格安全性"功能添加到 SQL Server 2016
11334467 4075158 修复:在 SSRS 2016(共享点模式)报表的参数窗格中未正确本地化布尔值
11542281 4057054 修复:CXPACKET 和 CX消费者等待类型显示 SQL Server 2016 和 2017 中某些并行查询计划的结果不一致
10932023 4043624 修复:更改跟踪手动清理失败,SQL Server 中的表不存在错误
10871968 4021243 修复:在 SQL Server 2012 和 2016 中为可用性数据库创建或配置"始终打开"可用性组时,访问冲突
11454650 4089239 修复:当在 SQL Server 2016 中启用 TF 7412 时,QRY_PROFILE_LIST_MUTEX 被阻止
11566335 4089509 修复:使用 QDS 并指定查询计划以解决性能回归时的访问冲突
11523867 4090279 修复:回滚在 SQL Server 2016 中更新大量数据的批处理需要很长时间
9191595 4092045 修复:在 SQL Server 2016 中禁用更改数据捕获功能时,AG 中发生 LSN 截断
10288012 4092046 修复:使用"添加文件"或"添加日志"命令添加具有相同逻辑名称的文件后,无法重新启动 SQL Server 2016
11543252 4092066 修复:当数据库整理在 SQL Server 2016 和 2017 中使用"_SC"排序规则扩展时,未启用复制
9824203 4092069 改进分发代理清理过程以提高 SQL Server 2016 中的事务复制性能
10895916 4092075 改进:在 SQL Server 2016 中添加对 DBCC CLONEDATABASE 的服务代理支持
11555288 4089473 更好的查询内并行性死锁在 SQL Server 2017 和 2016 中进行故障排除
11578523 4089718 改进:将 MDS 从 SQL Server 2012 升级到 2016 时的性能问题
10871976 4016361 修复:在 SQL Server 中发生可用性组故障转移后,服务代理终结点连接不会关闭
8742052 4054842 改进:SQL Server 2016 和 2017 中的更改跟踪清理过程的一般改进
12519464 4475794 修复:访问冲突异常发生在访问具有筛选索引或统计信息的表的查询优化期间

此更新注意事项


其他分辨率

SQL Server 2016 SP2 中还包括解决以下问题的问题。
VSTS 错误号 说明 区域

10698782

添加新的 DMV sys.dm_db_log_stats,返回有关数据库事务日志文件的摘要级属性和信息。 SQL 引擎

10698846

添加新的 DMV sys.dm_tran_version_store_space_用法,该使用情况返回一个表,以显示每个数据库的版本存储记录使用的 tempdb 中的总空间。 SQL 引擎
10760480 在 DMV sys.dm_server_服务服务器功能中公开处理器信息,如内核计数、套接字和 NUMA 信息。 SQL 引擎
10755072 将文件组支持添加到SELECT INTO语句。这允许您指定将在其中创建新表的文件组的名称。指定的文件组应存在于数据库上,否则 SQL Server 引擎将引发错误。 SQL 引擎
9742982 修复了当 MAXDOP设置为1时,计划缓存内存使用率高的问题。 SQL 引擎
10698847 修复了通过虚拟设备接口 (VDI)接口启用透明数据加密 (TDE)数据库的压缩备份的还原可能失败的问题,操作系统错误 38。 SQL 引擎
10698823 公开数据库中差异更改的百分比,以帮助确定完整数据库备份或差异备份是否有用。 SQL 引擎
10823015 提高了具有大内存的计算机上的备份性能。 SQL 引擎
10697461 修复了MAX_GRANT_PERCENT查询提示并不总是受到尊重的问题。 SQL 性能
10756412 将"带验证"选项和"带备份-克隆"选项添加到DBCC CLONE 数据库管理命令,该命令允许您验证和备份克隆的数据库。 SQL 引擎
10925573 添加新的扩展事件标记为_事务_锁存_跟踪,该事件显示标记事务使用的全局闩锁的状态。 SQL 引擎
8837822 修复了 DMV sys.dm_exec_query_配置文件显示与估计查询或实际查询计划不一致的不正确结果的问题。 SQL 性能
10698786 添加新的 DMV sys.dm_db_log_info,返回有关事务日志文件的虚拟日志文件 (VLF)信息。 SQL 引擎
10914366 在进程列表中添加数据库名称属性,并在扩展事件xmlinininin_report中添加执行Stack,以公开数据库名称。 SQL 引擎

10723493

修复了在查询 DMV sys.dm_db_stats_直方图时,如果TIMESTAMP列包含值时可能会出现断言错误的问题。 SQL 性能
9437530 修复了 Showplan XML 中的内存授予使用情况(输入内存授予、输出内存授予已用内存授予属性),用于并行查询。 SQL 性能
9480942 修复了在 GetNextAllHoBts 中避免出现引用的问题。 SQL 引擎
8523231 添加持久内存优化表,这些表可以具有对非持久内存优化表的外键引用。 内存中 OLTP
9737945 添加 DVM sys.dm_tran_version_store_space_使用情况,该使用情况可以跟踪每个数据库中的 tempdb 版本存储使用情况。 SQL 引擎
9146914 SpLevel 和发布产品版本属性添加到 SQL Server 2016 SP1。 设置和安装
10365365 通过在自定义群集中的被动节点上安装 SQL Server 安全更新来修复问题。 设置和安装
11565681 公开数据库的最后已知良好的DBCC CHECKDB日期和时间。 SQL 引擎
11583626 通过从安装了 Polybase 的故障转移群集中删除节点来解决此问题。 SQL 引擎
11559743 修复了在横向扩展部署模式下安装Polybase功能时无法运行 ADDNODE 步骤的问题。 SQL 引擎
10973764 改进了对 AlwaysOn 可用性组 (AG) 数据库的分布式事务协调器 (DTC) 服务支持。 SQL 引擎

有关如何将 SQL Server 安装升级到 SQL Server 2016 SP2 的详细信息,请参阅支持的版本和版本升级

卸载 SQL Server 2016 SP2(不推荐)

如果出于任何原因,您选择卸载 SQL Server 2016 SP2,则不会阻止 SQL Server 2016 SP2 的卸载,并且您将能够卸载 SQL服务器 2016 SP2 的方式与任何其他服务包相同。但是,如果您正在运行 SQL Server 的标准版、Web 版或快速版并且正在使用一些仅在启动 SQL Server 2016 SP2 时解锁的新功能,则可能会遇到错误或在卸载 SQL Server 2016 SP2 后,数据库处于可疑状态。更糟糕的是,如果系统数据库使用新功能(例如,主数据库中的分区表),这可能会阻止SQL Server卸载 SQL Server 2016 SP2后,从starting的实例。

我们建议您在选择在企业版以外的版本上卸载 SQL Server 2016 SP2之前,验证是否禁用或删除了所有新功能。不能删除内存_优化数据文件组。因此,如果您已使用 SP2 在数据库上设置了内存_优化数据文件组,则不应卸载 SQL Server 2016 SP2。否则,数据库将进入可疑状态,以下条目将记录在error 日志中:

日期时间spid15s 错误: 41381, 严重性: 21, 状态: 1.DateTime spid15s 此版本的 SQL Server 无法启动数据库,因为它包含一个 MEMORY_优化_DATA 文件组。有关不同 SQL Server 版本中的功能支持的详细信息,请参阅联机丛书。
 

参考


有关如何确定当前 SQL Server 版本和版本的详细信息,请选择以下文章编号以转到 Microsoft 知识库中的文章:

321185如何识别 SQL Server 版本和版本

本文中提到的第三方产品由 Microsoft 以外的其他公司提供。 对于这些产品的性能或可靠性,Microsoft 不做任何暗示保证或其他形式的保证。