MSSQLSERVER_8645
详细信息
产品名称 |
SQL Server |
产品版本 |
10.50 |
产品内部版本号 |
10.50.0000.00 |
事件 ID |
8645 |
事件源 |
MSSQLSERVER |
组件 |
SQLEngine |
符号名称 |
MEMTIMEDOUT_ERR |
消息正文 |
等待内存资源来执行该查询时发生超时。请重新运行查询。 |
解释
系统中没有足够的内存来处理该查询负载。
用户操作
将超时值配置为较大的值,或者减少服务器的查询负载。
下面的列表概述了有助于解决内存错误的一般步骤:
验证其他应用程序或服务是否占用此服务器上的内存。重新配置不太重要的应用程序或服务,使其占用更少的内存。
开始收集 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
如果问题仍存在,则您将需要进一步调查,可能需要减小工作负荷。