SQL Server 锁定内存中的页

SQL Server 锁定内存中的页

我最近在 SQL Server 上遇到了这个问题,内存毫无原因地达到最大值,导致性能低下。我在 32 位 SQL Server 标准版上运行 64 位操作系统。

检查错误日志发现了以下情况:

很大一部分 SQL Server 进程内存已被分页。这可能会导致性能下降

显然,解决这个问题的方法是让 SQL Server 锁定内存中的页面。解决方法可以从这里

然而!根据微软,启用内存锁定页面选项而不使用 AWE 会严重损害我的系统。我当前的设置没有足够的 RAM(2 GIGS)来利用此功能。

那么到底是怎么回事呢?如果我不实施修复,SQL Server 就会变慢。如果我实施修复,它也会变慢。

有人对此有什么想法或经验吗?

答案1

我认为 MSDN 条目不正确。请阅读下面的社区评论:

更正本主题第一段从客户反馈来看,本主题的开头段落并不完全清楚。请将以下内容视为正式的第一段:

如何:启用“锁定内存页”选项 (Windows) Windows 策略“锁定内存页”选项默认处于禁用状态。必须启用此权限才能配置地址窗口扩展 (AWE)。此策略确定哪些帐户可以使用进程将数据保存在物理内存中,从而防止系统将数据分页到磁盘上的虚拟内存中。在 32 位操作系统上,在不使用 AWE 的情况下设置此权限会严重影响系统性能。在 64 位操作系统上通常不需要锁定内存页。仅当使用大页面内存支持或配置 SQL Server 以使缓冲池内存不被分页时,才需要在 64 位操作系统上启用此权限。使用 Windows 组策略工具 (gpedit.msc) 为 SQL Server 2005 数据库引擎使用的帐户启用此策略。您必须是系统管理员才能更改此策略。

相关内容