Windows 2008R2 上 SQL 2008R2 的推荐页面文件大小

Kev*_*Kev 25 sql-server-2008 sql-server windows memory

这篇 Microsoft 文章 -如何确定 64 位版本的 Windows Server 2008 和/或 Windows 2008 R2 的适当页面文件大小提供了计算 64 位 Windows 2008 和 Windows 2008R2 的页面文件大小的指南。这无疑适用于通用服务器。我想知道在 Windows 2008/R2 64 位上运行的 SQL Server 2008R2 的指导是什么?

我假设我们希望内存中的数据尽可能少地访问页面文件,否则 SQL 可能会访问磁盘两次以获取数据。SQL Server 甚至允许内存中的数据访问页面文件吗?我已经通过SQL Server 2008 R2 联机丛书寻找指导,但还没有发现任何关于页面文件使用的提及。

这是一个潜在的使用场景:给定一个具有 64GB RAM 的物理服务器,整个 64GB RAM 是否需要一个页面文件?我们应该为 96GB 的页面文件做好准备吗?对于单个文件来说,这似乎有点过分。我知道传统观点是,Windows 将页面文件与内存结合起来,以尝试在 RAM 上更轻松地交换应用程序,但这是真的吗?小于 64GB 的页面文件会影响性能吗?

gbn*_*gbn 15

SQL Server 没有特殊设置,通常只使用物理内存

只需按照 MS 对 Windows 所说的去做就可以了

哦,无论如何,当我们是主题之一时,请购买更多内存...... ;-)


Sta*_*hns 6

调查一下lock pages in memory。这样,您可以优先让您的 SQL 服务帐户使用可用 RAM 而不是分页到磁盘。要阅读有关内存中锁定页面的更多信息,请查看此链接。一个片段如下:

默认情况下禁用 Windows 策略锁定内存中的页面选项。必须启用此权限才能配置地址窗口扩展 (AWE)。此策略确定哪些帐户可以使用进程将数据保存在物理内存中,从而防止系统将数据分页到磁盘上的虚拟内存。在 32 位操作系统上,在不使用 AWE 时设置此权限会显着降低系统性能。在 64 位操作系统上不需要锁定内存中的页面。

在您的系统上使用之前,请测试此功能。

  • “在内存中锁定页面”或许可以更好地描述为一种保护措施,以防止操作系统将 SQL 内存调出。http://support.microsoft.com/kb/918483 (4认同)