我有长时间运行的查询,我无法避免,现在当我第一次运行它时,它运行成功但下次运行相同的应用程序时sql server错误日志给我一个错误说“系统不足资源池'internal'中的内存来运行此查询。“
我如何解决它,请帮助我摆脱这个讨厌的问题 在我的情况下加载hibernate实体文件时出现此错误。
这是DB的错误日志。
Grants 0
Waiting 0
Available 660
Current Max 660
Future Max 660
Physical Max 4095
Next Request 0
Waiting For 0
Cost 0
Timeout 0
Wait Time 0
2014-01-17 17:00:43.81 spid87
Small Query Memory Objects (internal) Value
---------------------------------------- ----------
Grants 0
Waiting 0
Available 0
Current Max 0
Future Max 0
2014-01-17 17:00:43.81 spid87
Optimization Queue (internal) Value
---------------------------------------- ----------
Overall Memory 35807232
Target Memory 20291584
Last Notification 0
Timeout 6
Early Termination Factor 5
2014-01-17 17:00:43.81 spid87
Small Gateway (internal) Value
---------------------------------------- ----------
Configured Units 16
Available Units 15
Acquires 1
Waiters 0
Threshold Factor 380000
Threshold 380000
2014-01-17 17:00:43.81 spid87
Medium Gateway (internal) Value
---------------------------------------- ----------
Configured Units 4
Available Units 3
Acquires 1
Waiters 0
Threshold Factor 12
Threshold 1690965
2014-01-17 17:00:43.81 spid87
Big Gateway (internal) Value
---------------------------------------- ----------
Configured Units 1
Available Units 0
Acquires 1
Waiters 0
Threshold Factor 8
Threshold 2536448
2014-01-17 17:00:43.81 spid87
Memory Pool Manager Pages
---------------------------------------- ----------
Reserved Current 0
Reserved Limit 1597
2014-01-17 17:00:43.81 spid87
Memory Pool (internal) Pages
---------------------------------------- ----------
Allocations 3584
Predicted 6199
Private Target 0
Private Limit 0
Total Target 5181
Total Limit 5181
OOM Count 1
2014-01-17 17:00:43.82 spid87
MEMORYBROKER_FOR_CACHE (internal) Pages
---------------------------------------- ----------
Allocations 1643
Rate -3058
Target Allocations 1152
Future Allocations 0
Overall 4371
Last Notification 2
2014-01-17 17:00:43.82 spid87
MEMORYBROKER_FOR_STEAL (internal) Pages
---------------------------------------- ----------
Allocations 1941
Rate 1592
Target Allocations 2477
Future Allocations 0
Overall 4371
Last Notification 0
2014-01-17 17:00:43.82 spid87
MEMORYBROKER_FOR_RESERVE (internal) Pages
---------------------------------------- ----------
Allocations 0
Rate 0
Target Allocations 717
Future Allocations 1023
Overall 4371
Last Notification 0
2014-01-17 17:00:43.87 spid87 Error: 701, Severity: 17, State: 123.
2014-01-17 17:00:43.87 spid87 There is insufficient system memory in resource pool 'internal' to run this query.
答案 0 :(得分:0)
我没有StackOverflow“声望”来添加评论,所以我必须在这里添加。
我偶然发现了这篇Microsoft知识库文章:http://support.microsoft.com/kb/982854。
它指出SQL Server 2008 R2 SP2的累积更新1中有一个解决此问题的修复程序。不幸的是,我还没有能够在停机期间对此进行全面测试,但它直接引用了我遇到的相同问题,导致您看到的错误消息相同。
您正在使用的SQL Server 2008 R2的版本号是多少?我在10.50.1600(原件,黄金,没有服务包),我收到了这个错误。