Rob*_*ley 19 windows memory sql-server
我知道 SQL 喜欢 RAM,但是当 Windows 询问时会释放它。我知道这就是 SQL 应该如何工作。但是我有一个 Windows 管理员不相信 SQL 实际上会返回 RAM,并且在这个特定的(虚拟)服务器上,一旦 Analysis Services 完成,SQL 就不需要太多多问 SQL。
所以我试图向 Windows 管理员保证虚拟环境的问题不是“因为 SQL 使用了太多 RAM”,但我似乎无法说服 SQL 在不重新启动服务的情况下释放它。
在处理多维数据集时,SQL 服务愉快地占用了 8GB 的 RAM,但由于它没有压力,所以在正常的一天中它不会释放太多内存。Windows 人尖叫,让 SQL 发布它会更好。
我不想使用最大内存设置,因为我确实希望 SQL 在处理时使用那么多 RAM。我只是希望它之后再次下降。
它可能是SQL Server 不释放内存和从 SQL Server 回收内存的重复,但我想知道是否有不同的答案。等待 Windows 收回它不会说服这里的 Windows 人员。重新启动服务是一种选择,但我真的不喜欢这个想法。
我想知道如何让 Windows 要求它回来......
Mit*_*eat 12
我相信您唯一的选择是重新启动 SQL 服务,或者运行一个消耗大量内存的应用程序来强制 SQL 释放它。
我喜欢@Nick Kavadias 的建议:监控Memory: Page Faults/Sec性能计数器,以表明 SQL 没有将操作系统的内存置于压力之下。
向他们展示它会这样做的一种方法是让 SQL Server 占用所有内存。然后通过网络复制一个巨大的文件(大型 SQL 备份文件对此非常有用)。这将导致系统缓存被填满,Windows 将开始向 SQL 请求返回其内存。SQL 将开始将内存返回给操作系统,直到达到您的最小内存设置。
(抱歉没有通过 Twitter 得到整个问题,显然需要 140 多个字符。)
| 归档时间: |
|
| 查看次数: |
71401 次 |
| 最近记录: |