相关疑难解决方法(0)

评估合理缓冲池大小的确定性方法是什么?

我试图想出一种理智的方法来了解max server memory (mb)设置是否合适(应该更低,或更高,或保持原状)。我知道max server memory (mb)应该总是足够低,以便为操作系统本身等留出空间。

我正在查看的环境有数百台服务器;我需要一个可靠的公式来确定缓冲池的当前大小是否合适,因为 RAM 是按分配给每个服务器的 GB 计算的。整个环境都是虚拟化的,分配给 VM 的“物理”RAM 可以轻松地向上或向下更改。

我有一个特定的 SQL Server 实例,我现在查看的 PLE 为 1,100,052 秒,相当于 12.7 天(服务器启动的时间)。服务器的最大服务器内存设置为 2560MB (2.5GB),其中实际仅提交 1380MB (1.3GB)。

我已经阅读了几篇文章,包括 Jonathan Keheyias(帖子)和 Paul Randal(帖子)的另一篇文章,以及其他几篇文章。Jonathan 主张监控每 4GB缓冲池低于 300 的 PLE太低了。对于上面的 SQL Server 实例,300 * (2.5 / 4) = 187导致目标 PLE 非常低,低于 300。此实例具有 290GB 的 SQL Server 数据(不包括日志文件),仅用于集成测试。假设在过去的12天代表该服务器的典型用法的,我想说的max server memory (mb)设置可能会降低。

在规模的另一端,我有另一个 PLE 为 …

sql-server sql-server-2008-r2 sql-server-2012

29
推荐指数
2
解决办法
6596
查看次数

在 SQL Server 中保留默认的最大内存 2147483647 MB​​ 值,这是一种不好的做法吗?

基于该 msdn 页面: 服务器内存设置,最好保留 SQL-Servers min 和 max memory 的默认值以使其保持动态...

根据我通过教程学到的知识,您应该始终定义一个最大值,关于最小值,我没有听说过太多。我正在使用简单的旧 perfmon 监视我的页面文件,我意识到很少发生磁盘交换,一旦它几乎导致服务器崩溃。

这可能与 SQL Server 中的默认最大内存设置有关吗?数据库大约为 150 GB,内存为 48 GB,该机器上没有其他应用程序在运行。

另外,为什么你应该有一个最小值?我知道太低的值会阻止 SQL-Server 启动,我知道 SQL-Server 将内容保存在内存中,因此不会尝试释放它的缓存。

我正在使用 SQL-Server 2012,在此先感谢您!

performance sql-server memory sql-server-2012

6
推荐指数
1
解决办法
2万
查看次数