KB5122048 - SQL Server 2025 的累积更新 9

发布日期:2026 年 9 月 15 日
版本:17.0.5005.3

摘要

本文介绍了 Microsoft SQL Server 2025 的累积更新 9 (CU9)。 此更新程序包包含 SQL Server 2025 累积更新 8 发布后发布的 45 个修补程序。 它更新了以下版本中的组件:

  • SQL Server - 产品版本:17.0.5005.3,文件版本:2025.170.5005.3
  • Analysis Services - 产品版本:17.0.25.223,文件版本:2025.170.25.223

重要

若要帮助保护 Windows 上的 SQL Server,请使用扩展保护启用加密。

此更新中的已知问题

并行计划中 SESSION_CONTEXT 的错误行为

在并行查询计划中运行时,使用内置 SESSION_CONTEXT 函数的查询可能会返回不正确的结果,或者触发访问冲突 (AV) 转储文件。 出现此问题的原因在于 SESSION_CONTEXT 与并行执行线程交互的方式,尤其是在重置会话以供重复使用时。

有关详细信息,请参阅中“SESSION_CONTEXT已知问题”部分。

使用 MSDASQL 的链接服务器查询会失败,并生成错误 7416

使用 MSDASQL(适用于 ODBC 驱动程序的 OLE DB 提供程序)提供程序并指定提供程序字符串 (@provstr) 的链接服务器查询将会失败,并返回以下错误消息:

消息 7416,级别 16
被拒绝访问远程服务器,因为不存在登录映射。

数据库引擎中的更严格连接验证检查可能会拒绝使用 MSDASQL 提供程序的某些链接服务器配置的连接,即使早期版本允许这些连接也是如此。

有关详细信息和解决方法,请参阅使用 MSDASQL 的链接服务器查询失败,并返回错误 7416。

数据库恢复期间查询 sys.dm_exec_requests 时发生访问冲突

如果针对 sys.dm_exec_requests 的查询在数据库仍在恢复期间运行,则可能会引发访问冲突并生成转储文件。 此问题可能发生在数据库 RESTORE 操作期间、启动恢复期间,或可用性组副本完成联机之前。

SQL Server 错误日志包含类似于以下文本的条目:

The database '<DatabaseName>' is marked RESTORING and is in a state that does not allow recovery to be run.
***Stack Dump being sent to <SQLServerLogFolder>\SQLDump0215.txt
SqlDumpExceptionHandler: Process 77 generated fatal exception c0000005 EXCEPTION_ACCESS_VIOLATION. SQL Server is terminating this process.
*******************************************************************************

BEGIN STACK DUMP:
  07/30/26 07:37:23 spid 77

Exception Address = <frame id="00" address="0x7FFDED94970D" pdb="sqlmin.pdb" age="2" guid="E1039014-237E-4DB6-88FD-4A2AB31C651F" module="sqlmin" rva="0x2970D" />
Exception Code    = c0000005 EXCEPTION_ACCESS_VIOLATION
Access Violation occurred reading address 00000000000000F0
Input Buffer <size> bytes -
          <dbo.sp_YourMonitoringStoredProcedure>

发生此问题的原因是发生更改,导致在完全初始化内部内存中结构之前引用这些结构。

Microsoft 已知悉此问题且正在调查修补程序。 在修补程序可用之前,请使用以下缓解措施之一:

  • 启用跟踪标志 4696 以选择退出导致此问题的代码更改。 如果启用此跟踪标志,则在次要副本上查询 sys.dm_exec_requests 或 sys.sysprocesses 的监视查询可能会像安装此更新之前那样返回错误 976 或错误 978。
  • 避免针对正在恢复的数据库的 sys.dm_exec_requests 进行查询。
  • 卸载此更新。

此更新中的改进和修复

提供了一个可下载的 Microsoft Excel 工作簿,其中包含生成摘要列表及其当前支持生命周期。 Excel 文件还包含适用于 SQL Server 2025、SQL Server 2022、SQL Server 2019 和 SQL Server 2017 的详细修补程序列表。 立即下载此 Excel 文件。

注意

可以通过书签直接引用下表中的各个条目。 如果在表中选择任何 bug 引用 ID,系统会使用“#NNNNNNN”格式将书签标记添加到 URL。 然后,你可以与他人共享此 URL,以便他们直接跳转到表中所需的修复。

有关修复的 bug 和此累积更新中包含的增强功能的详细信息,请参阅下表。

Bug 参考 说明 修复区域 组件 平台
5126015 修复了以下问题:如果用户的显示名称包含系统默认代码页不支持的日文汉字或其他 Unicode 字符,则创建数据库用户将会失败并返回字符映射或令牌错误。 SQL Server 引擎 安全基础结构 Windows
5314117 修复了在经身份验证的表格格式数据流 (TDS) 远程过程调用 (RPC) 期间发生的缓冲区溢出问题,该问题会导致 SQL Server 进程意外终止。 SQL Server 引擎 SQL Server 引擎 全部
5383382 修复了影响备份到 Microsoft Azure 的 SQL Server 托管备份存储过程 managed_backup.sp_get_encryption_option 和 managed_backup.sp_do_backup 的漏洞。 使用托管备份的客户应通过标准 SQL Server 服务流程应用此更新。 SQL Server 引擎 管理服务 全部
5434226 改进了 SQL Server VSS 编写器处理的备份元数据的验证,以便安全地拒绝格式错误或大小过小的元数据。 SQL Server 引擎 备份还原 Windows
5442240 改进了 SQL Server 代理加载任务代理组件时的安全验证。 SQL Server 引擎 SQL 代理 Windows
5456076 提高了 SQL Server 代理处理某些输入时的可靠性和安全性。 SQL Server 引擎 管理服务 全部
5459623 修复了 SQL Server WMI 提供程序无法正确处理格式错误的输入的问题,同时保留了针对有效输入的现有行为。 SQL Server 客户端工具 SQL Server WMI 提供程序 Windows
5459705 修复了在优化锁定机制下,当某行在被转发后又重新符合条件时发生的断言失败问题。 SQL Server 引擎 访问方法 全部
5462726 修复了处理使用 Microsoft Entra 身份验证的登录请求时出现的安全漏洞。 SQL Server 引擎 安全基础结构 全部
5473622 修复了以下问题:如果用户的显示名称包含系统默认代码页不支持的日文汉字或其他 Unicode 字符,则使用该 WITH OBJECT_ID 选项从 Microsoft Entra ID 创建数据库用户将会失败。 SQL Server 引擎 安全基础结构 Windows
5477946 修复了在某些操作条件下影响 SQL Server 代理的安全性和可靠性的问题。 SQL Server 引擎 管理服务 全部
5479036 修复了次要副本无法加入名称由 64 个字符组成且群集类型为 NONE 或 EXTERNAL 的可用性组的问题。 SQL Server 引擎 高可用性和灾难恢复 全部
5482770 修复了 SUBSTRING 函数在本机编译的存储过程中处理格式错误的 DBCS varchar 值时,读取范围超出分配的缓冲区的问题。 SQL Server 引擎 内存中 OLTP 全部
5482825 修复了一个会导致以下情况的访问冲突:如果在本机编译的存储过程中,按变体选择器敏感(_VSS)排序规则转换或截断一个包含表意变体序列的 nvarchar 值,SQL Server 进程会意外结束。 SQL Server 引擎 内存中 OLTP 全部
5482831 修复了以下问题:如果在本机编译的存储过程中,按变体选择器敏感(_VSS)排序规则流式处理 nvarchar(max) 数据,则会导致堆缓冲区覆盖或导致服务器停止响应。 如果 TEXTSIZE 设置会截断数据且使用的表格格式数据流 (TDS) 数据包较小,则会出现此问题。 SQL Server 引擎 内存中 OLTP 全部
5486869 修复了飞地代码中的类 ID 查找会读取任意内存的问题。 SQL Server 引擎 安全基础结构 Windows
5486988 为由 sys.sp_describe_parameter_encryption 分析的嵌入式证明字段添加了边界验证。 SQL Server 引擎 安全基础结构 Windows
5487460 改进了在外部数据访问期间对 S3 兼容型外部存储终结点响应的验证。 SQL Server 引擎 PolyBase 全部
5494995 修复了以下问题:如果使用修改后的命令行参数启动 PolyBase 服务,则会为 DW 引擎以及 DMS 控制通道和数据通道打开原始 TCP 侦听器。 SQL Server 引擎 PolyBase 全部
5495464 修复了处理 xml 数据类型的 DTD 属性列表时出现的问题。 SQL Server 引擎 XML 全部
5495722 修复了在查询包含非常大的 OPTION (USE PLAN) XML 声明时发生的访问冲突,这种冲突可能导致 SQL Server 进程意外结束。 SQL Server 引擎 XML 全部
5496451 修复了 LEFT_SHIFT 和 RIGHT_SHIFT 函数在处理特殊设计的移位值或二进制输入时发生的算术溢出和越界内存访问问题。 该活动可能导致 SQL Server 进程意外终止。 SQL Server 引擎 可编程性 全部
5496497 改进了 SQL Server 处理和输出某些内部事件数据的方式,以帮助更好地保护信息。 SQL Server 引擎 可编程性 全部
5498355 修复了 SQL Server 中的一个安全问题:扩展事件中的验证不足可能导致内存损坏。 SQL Server 引擎 扩展事件 全部
5498927 修复了在数据库引擎读取特殊设计的扩展事件 (.xel) 文件时允许信息泄漏或拒绝服务的几个安全漏洞。 SQL Server 引擎 扩展事件 全部
5499864 修复了在通过 OPENROWSET(BULK ...) 或 BULK INSERT 处理特殊设计的 XML 格式文件时 XML 读取器中发生的整数溢出问题。 这种情况可能导致 SQL Server 进程停止响应或意外终止。 SQL Server 引擎 XML 全部
5501925 修复了因 sys.fn_external_policy_actions_assigned_to_principal 中的错误条件生成格式不正确的错误消息的问题。 SQL Server 引擎 安全基础结构 全部
5502845 改进了飞地代码中的缓冲区长度验证。 SQL Server 引擎 安全基础结构 Windows
5504495 修复了无法在 SCHEMA_OBJECT_ACCESS_GROUP 审核操作组生成的审核记录中一致填充 data_sensitivity_information 字段的问题。 此修复可确保所有适用的审核记录中都可靠地包含敏感度信息。 SQL Server 引擎 安全基础结构 全部
5504681 修复了 Buffer cache hit ratio 性能计数器在性能监视器中始终显示为零的问题。 SQL Server 引擎 SQL 操作系统 Windows
5505723 修复了 SQL Server 中的一个输入验证不当的问题,该问题允许经过身份验证的用户泄露少量内存。 此修补程序加强了输入验证。 SQL Server 引擎 查询优化器 全部
5506053 修复了 SQL Server 中的一个输入验证不当的问题,该问题允许经过身份验证的用户泄露内存中的信息。 此修补程序加强了输入验证。 SQL Server 引擎 查询优化器 全部
5506113 修复了 SQL Server 中的一个输入验证不当的问题:经过身份验证的用户可提供一个指针,而 SQL Server 会解引用并读取该指针,但不会执行。 此问题可能导致生成转储文件,或导致内存不足的情况。 此修补程序加强了输入验证。 SQL Server 引擎 查询优化器 全部
5511027 修复了在删除或截断操作后 sys.dm_db_session_space_usage 报告的 tempdb 空间使用情况中的不一致问题。 SQL Server 引擎 存储管理 全部
5514968 添加了对在 SQL Server 的 Standard 和 Standard Developer 版本上配置手动软 NUMA 的支持。 SQL Server 引擎 SQL 操作系统 Windows
5529170 修复了 SqlDataRecord.SetBytes API 中针对 sql_variant 值的字段偏移验证不当的问题;若启用了 CLR 集成,该问题可能导致越界堆写入。 SQL Server 引擎 可编程性 Windows
5529203 改进了对 Showplan 输入的处理,以增强安全性和可靠性。 SQL Server 引擎 查询存储 Windows
5529344 改进了在处理操作期间对内部复制数据的保护。 SQL Server 引擎 复制 全部
5529357 改进合并复制中的文本数据处理,以增强安全性和可靠性。 SQL Server 引擎 复制 全部
5529369 改进了复制操作的验证和处理,以增强安全性和可靠性。 SQL Server 引擎 复制 全部
5529380 改进了事务复制中排队更新订阅的安全性和可靠性。 SQL Server 引擎 复制 Windows
5529393 改进了事务复制中排队更新订阅的安全性和可靠性。 SQL Server 引擎 复制 Windows
5529457 修复了更改事件流 (CES) 中的以下问题:当事件数据有效负载包含特定字符时,会导致事件无法反序列化。 SQL Server 引擎 复制 全部
5529461 修复了在对通过“更改事件流”流式传输的大型对象数据进行序列化期间可能生成 SQL Server 转储文件的问题。 SQL Server 引擎 复制 全部
5650414 为托管实例链接添加多数据库链接模式。 可以使用此模式将包含多个数据库的现有 Always On 可用性组从 SQL Server 扩展到 Azure SQL 托管实例,并将这些数据库一起复制和故障转移。 SQL Server 引擎 高可用性和灾难恢复 全部

如何获取或下载此 CU 或最新的 CU 程序包

如何获取或下载适用于 Windows 的最新累积更新程序包(推荐)

可以从 Microsoft 下载中心下载以下更新:

立即下载 SQL Server 2025 的最新累积更新程序包

注意

如何从 Microsoft 更新目录获取或下载此适用于 Windows 的累积更新程序包

你可以从 Microsoft 更新目录获取以下更新:

注意

  • Microsoft 更新目录包含此 SQL Server 2025 CU 和以前发布的 SQL Server 2025 CU 版本。
  • 此外,Windows Server Update Services (WSUS) 中也提供了此 CU。
  • 建议始终安装可用的最新累积更新。
如何获取或下载适用于 Linux 的最新累积更新程序包

要将 Linux 上的 SQL Server 2025 更新到最新的 CU,必须先配置累积更新存储库。 然后,使用适当的特定于平台的更新命令更新 SQL Server 程序包。

有关安装说明和指向 CU 程序包下载的直接链接,请参阅 SQL Server 2025 发行说明。

文件信息

文件哈希信息

你可以通过以下命令计算 SQLServer2025-KB5122048-x64.exe 文件的哈希,以验证下载:

certutil -hashfile SQLServer2025-KB5122048-x64.exe SHA256

文件名 SHA256 哈希
SQLServer2025-KB5122048-x64.exe 30F5A2F57DC82C8E5A497FDEBD15263840D160414E3D0049F174F9C4059D0994
累积更新程序包文件信息

下载 KB5122048 中包含的一系列文件。

此更新注意事项

先决条件

你必须运行的是 SQL Server 2025,才能应用此累积更新程序包。

重启信息

应用此累积更新程序包后,可能必须重启计算机。

注册表信息

若要使用此程序包中的某个修补程序,你不必对注册表进行任何更改。

重要通知

本文还提供了以下重要信息。

Analysis Services CU 内部版本

从 Microsoft SQL Server 2017 开始,Analysis Services 内部版本号和 SQL Server 数据库引擎内部版本号不匹配。 有关详细信息,请参阅验证 Analysis Services 累积更新内部版本。

累积更新 (CU)

  • 每个新的 CU 都包含前一个 CU 中针对已安装的 SQL Server 版本所包含的所有修复程序。
  • SQL Server CU 的认证级别与服务包相同,你可以放心安装。
  • 我们建议根据以下准则,持续主动地在 CU 发布后进行安装:
    • 历史数据显示,大量支持案例涉及已在发布的 CU 中解决的问题。
    • CU 可能包含修补程序之外的附加价值,例如可支持性、可管理性和可靠性更新。
  • 建议先对 SQL Server CU 进行测试,然后再将其部署到生产环境。
混合环境部署

如果要将一个更新部署到混合环境(例如 AlwaysOn、复制、群集和镜像),建议在部署该程序包之前参阅以下文章:

语言支持

SQL Server CU 目前提供多语言版本。 因此,此 CU 程序包并非专门针对一种语言。 它适用于所有支持语言。

更新的组件(功能)

一个 CU 程序包包括所有 SQL Server 2025 组件(功能)的所有可用更新。 但是,累积更新程序包仅更新当前安装在你选择要维护的 SQL Server 实例上的组件。 如果某个 SQL Server 功能(例如 Analysis Services)是在应用此 CU 后添加到相应实例的,则必须重新应用此 CU,才能将这一新功能更新到此 CU 的版本。

针对此更新的支持

如果发生其他问题或需要进行任何疑难解答,你可能需要创建服务请求。 对于其他支持问题和此特定累积更新程序包无法解决的事项,将照常收取支持费用。 若要获取 Microsoft 客户服务和支持部门的完整电话号码列表,或创建单独的服务请求,请转到 Microsoft 支持网站。

如何卸载此更新

如何在 Windows 上卸载此更新
  1. 在控制面板中,打开“程序和功能”项,然后选择“查看已安装的更新”。
  2. 在 SQL Server 2025 下找到与此累积更新程序包对应的条目。
  3. 按住(或右键单击)该条目,然后选择“卸载”。
如何在 Linux上卸载此更新

要在 Linux 上卸载此 CU,您必须将程序包回滚到以前的版本。 有关如何回滚安装的详细信息,请参阅回滚 SQL Server。

参考资料