SQL 2008 R2 的高内存利用率

-1 memory memory-leak sql-server

我们在 Window 2008 服务器上安装了 SQL 2008 R2 Enterprise。它有 24 GB 的 RAM。SQL 服务器在优化作业期间占用所有内存,并且在作业完成后不会释放它。唯一的解决方法是重新启动 SQL 服务.请告知如何解决此问题。

Mas*_*imo 13

这是设计使然。

SQL Server 使用它可以获得的所有内存,除非您在其配置中明确限制最大内存使用量;它不会在使用完后自动释放它,因为无论如何它迟早都要重新分配它。但是,如果操作系统需要其他应用程序的内存,SQL Server 会很乐意释放它;所以你不应该担心这个。

如果您认为有必要,您可以对最大 SQL Server 内存使用量设置硬限制;这是一些文档:http : //msdn.microsoft.com/en-us/library/ms178067.aspx


Tom*_*Tom 7

RTFM。真的。阅读手册。

SQL Server 从不释放内存。它缓存它可以从数据库中获取的内容,以备以后需要时使用。如果要限制 SQL Server,请在启动参数中设置限制。即便如此,它也不会释放 memroy,除非其他应用程序需要它。而对于企业级 sql server,其他应用程序是一个空集(即在同一台服务器上没有)。

通常 SQL Server 被配置为尽可能好地使用它们的内存。释放内存意味着如果您需要数据,您必须返回到光盘,这是昂贵的。由于磁盘 IO 是大型数据库的主要限制因素之一。缓存很好。光盘慢。我见过使用 256GB 内存的服务器,用户对此很满意。

因此,如果有意义,请获得更多 RAM(32、64GB)。很高兴 SQL Server 充分利用了它。并且很快就会阅读文档;)

或者:如果您实际上已将 SQL Server 配置为释放内存并且 (!) 另一个应用程序要求它但没有得到它 - 向 Microsoft 提出错误。

  • 这么多愤怒的人在这里。这正是我到这里的方式……通过谷歌搜索。感谢您发布问题...使我的“谷歌搜索”更容易。 (3认同)
  • 手册总是好的,但在这里询问也很好。无论哪种方式,您都可以学习! (2认同)

归档时间:

查看次数:

6410 次

最近记录:

14 年,7 月 前