可能重复:
您能帮助我进行容量规划吗?
目前我们的SQL server 2008机器有24gb内存。
在分析了一些报告(PAL)和性能计数器之后,我得出结论:服务器可以使用更多的内存。
有什么好方法可以确定我应该在服务器上安装多少内存?有什么经验法则或可以参考的资料吗?
我为什么要去 48,或 72,或 128...
答案1
尽可能多地投入。说真的,RAM 很便宜。
您的服务器最多可以处理什么?(您可能需要咨询制造商才能找到答案)。
输入服务器可以处理的最大金额,并且您的预算可以扩展到该金额。
如果不了解服务器的使用情况和负载、数据库的大小、读/写负载等情况,就很难给出更准确的答案。
答案2
请记住,操作系统可能有限制。如果您想使用超过 32 GB 的内存,则必须切换到 Windows Server Enterprise Edition。
http://msdn.microsoft.com/en-us/library/windows/desktop/aa366778%28v=vs.85%29.aspx
答案3
这取决于服务器的具体品牌和型号以及您现在的内存,原因是在某些情况下添加内存可能会降低整个内存子系统的速度。因此,虽然在某些情况下拥有更多内存总是非常有用,但您可以影响这一单个因素。
因此请告知我们此信息,我们将为您提供帮助。
答案4
SQL Server 总是会占用它所需的内存,理想情况下,它会将整个数据库缓存在内存中(写入磁盘会浪费不必要的时间),因此请先查看数据库的大小(这可能会有所帮助,尽管你可能已经考虑到了这一点)。
我一直以来遵循的经验法则是,如果 RAM < 32gb,则为操作系统减少 4gb,如果 RAM 超过 32gb,则减少 8gb,但是您的里程数将要各不相同。不久前,Brentozar.com 上发布了一篇文章(我现在找不到链接),其中详细分析了 SQL 服务器如何使用内存,这可能会有所帮助。
如果您愿意挥霍,请投入您能承受的尽可能多的资金,但如果您想使用超过 32gb,请记住考虑操作系统版本的变化(如前所述)。