使用 Microsoft 登录
登录或创建帐户。
你好,
使用其他帐户。
你有多个帐户
选择要登录的帐户。

症状

假设你在运行 Windows Server 2012 或早期版本的 Windows 操作系统的计算机上安装64位版本的 Microsoft SQL Server 2014、2016或2017。 当 SQL Server 使用所有用户模式虚拟地址空间时,您可能会在 SQL Server 错误日志中收到内存不足错误消息。 此外,查询需要很长时间才能完成执行,并且会发生 SOS_MEMORY_TOPLEVELBLOCKALLOCATOR 等待。

当你检查以下信息点时,你将发现有非常少的可用虚拟地址空间:

  • DBCC MEMORYSTATUS-进程/系统计数部分-可用虚拟内存

  • DMV: sys.dm_os_process_memory 列 virtual_address_space_available_kb

这些值在 x64 进程上从 8 tb 开始,并继续顺向下并达到几千兆字节(GB)。

当处于可用虚拟地址空间较低的阶段时,尝试执行内存分配的查询也可能会遇到 CMEMTHREAD 的等待类型。

以下数据点将随着时间的推移不断增加:

  • DMV: sys.dm_os_process_memory 和 sys.dm_os_memory_nodes 列 virtual_address_space_reserved_kb

  • DBCC MEMORYSTATUS-内存管理器部分-VM 保留

这些值通常会以 "最大服务器内存" 值的倍数增加到几乎 8 TB。

注意相关问题也在KB 3074434中介绍。 

解决方案

此更新包含在 SQL Server 的以下累积更新中:

      SQL Server 2017 的累积更新4

      SQL Server 2016 SP1 的累积更新8  

      SQL Server 2014 的累积更新 10 Service Pack 2

SQL Server 的每个新的累积更新均包含以前的累积更新中包含的所有修补程序和所有安全修补程序。 查看 SQL Server 的最新累积更新:

SQL Server 2017 的最新累计更新

SQL Server 2016 的最新累计更新

SQL Server 2014 的最新累积更新

注意 应用此更新后,你必须将跟踪标记8075添加为启动参数以启用此更改。

状态

Microsoft 已确认这是在“适用范围”部分中列出的 Microsoft 产品存在的问题。

参考

了解 Microsoft 用于描述软件更新的 术语

需要更多帮助?

需要更多选项?

了解订阅权益、浏览培训课程、了解如何保护设备等。

社区可帮助你提出和回答问题、提供反馈,并听取经验丰富专家的意见。

此信息是否有帮助?

你对语言质量的满意程度如何?
哪些因素影响了你的体验?
按“提交”即表示你的反馈将用于改进 Microsoft 产品和服务。 你的 IT 管理员将能够收集此数据。 隐私声明。

谢谢您的反馈!

×