MSSQLSERVER_701
新建日期: 2006 年 7 月 17 日
MSSQLSERVER_701
详细信息
产品名称 |
SQL Server |
产品版本 |
9.0 |
产品内部版本号 |
9.00.1281.60 |
事件 ID |
701 |
事件源 |
MSSQLSERVER |
组件 |
SQLEngine |
符号名称 |
NOSYSMEM |
消息正文 |
系统内存不足,无法运行此查询。 |
说明
SQL Server 无法分配足够的内存以运行查询。产生这一现象的原因有多种,其中包括操作系统设置、物理内存可用性或对当前工作负荷的内存限制。大多数情况下,失败的事务不是导致此错误的原因。
由于服务器没有足够的内存,诊断查询(如 DBCC 语句)可能失败。
用户操作
下面的列表概述了有助于解决内存错误的一般步骤:
- 验证其他应用程序或服务是否占用此服务器上的内存。重新配置不太重要的应用程序或服务,使其占用更少的内存。
- 开始收集 SQL Server: Buffer Manager、SQL Server: Memory Manager 的性能监视器计数器。
- 检查以下 SQL Server 内存配置参数:
- max server memory
- min server memory
- awe enabled
- min memory per query
注意不正常的设置。根据需要将其更正。说明 SQL Server 2005 要求更高内存。默认设置在 SQL Server 联机丛书中的“设置服务器配置选项”中列出。
- 如果正在使用地址窗口化扩展插件 (AWE),请验证是否启用了 Windows 安全设置“锁定内存页”。
- 在您看到这些错误消息时,观察 DBCC MEMORYSTATUS 输出及其变化情况。
- 检查工作负荷(例如,并发会话数,当前执行的查询)。
以下操作可能使更多内存可供 SQL Server 使用:
- 如果除 SQL Server 外的应用程序正在占用资源,请尝试停止运行这些应用程序,或者考虑在单独的服务器上运行它们。这样做将消除外部内存压力。
- 如果已配置 max server memory,请增大其设置。
运行以下 DBCC 命令以释放几个 SQL Server 内存缓存。
- DBCC FREESYSTEMCACHE
- DBCC FREESESSIONCACHE
- DBCC FREEPROCCACHE
如果问题仍存在,则您将需要进一步调查,可能需要减小工作负荷。