我有一个〜45GB的数据库,迅速增加(每周〜1GB)。
所以它做了很多插入; networking应用没有太多的用户,所以现在的阅读率很低。
但是我注意到,服务器在一周之后首次开始使用〜7GB的内存时,RAM sql server用户从〜1GB开始下降。
是否有某种内存泄漏? 有一篇关于MSDN的文章,build议SQL服务器增加用于caching的内存,并且会一直增加。 然而,服务器只有7.5GB或RAM,所以我担心它会用尽内存,除非我每周重新启动SQL Server …这似乎是错误的。
这是典型的行为吗? 是否有一些设置可以设置内存使用上限?
SQL服务器的意思是使用尽可能多的内存,因为它可以得到它的手。 SQL服务器也非常聪明。 我们的数据库服务器的RAM范围从2Gb到96Gb,而不是曾经,我不得不介入,并开始手动pipe理RAM,其中大部分使用率为99.5%。
简单的事实是,运行1Gb消耗内存的SQL Server在读取时比运行96Gb消耗内存的SQL服务器要慢很多。
除非你与其他内存密集型angular色共享SQL服务器angular色,否则就把它放在一边。 它永远不会使用更多的内存在系统中可用,如果达到99%的利用率,那么很好 – 你已经创build了一个大的caching,事情会从现在开始更快。
通常情况下,您需要为操作系统分配1-2G的RAM,以便操作系统具有RAM。 SQL Server可以拥有剩余的内存。