如何启用“锁定内存页”选项 (Windows)
默认情况下,禁用 Windows 策略“锁定内存页”选项。必须启用此权限才能配置地址窗口化扩展插件 (AWE)。此策略将确定哪些帐户可以使用进程将数据保留在物理内存中,从而阻止系统将数据分页到磁盘的虚拟内存中。在 32 位操作系统中,如果在不使用 AWE 的情况下设置此权限会显著降低系统性能。在 64 位操作系统上不需要在内存中锁定页。
使用 Windows 组策略工具 (gpedit.msc),可以为 SQL Server使用的帐户启用此策略。必须是系统管理员才能更改此策略。
有关列出最大服务器内存值的表,请参阅内存体系结构。
启用“锁定内存中的页”选项
在“开始”菜单上,单击“运行”。在“打开”框中,键入 gpedit.msc。
将打开“组策略”对话框。
在“组策略”控制台上,展开“计算机配置”,再展开“Windows 设置”。
展开“安全设置”,再展开“本地策略”。
选择“用户权利指派”文件夹。
细节窗格中随即显示出策略。
在该窗格中,双击“锁定内存中的页”。
在“本地安全策略设置”对话框中,单击“添加”按钮。
在“选择用户或组”对话框中,添加有权运行 sqlservr.exe 的帐户。
在启用 AWE 之前,必须先配置“锁定内存页”策略。有关详细信息,请参阅如何启用“锁定内存页”选项 (Windows)。
示例
下面的示例显示如何激活 AWE 以及如何为 min server memory 配置 1 GB 的限制,为 max server memory 配置 6 GB 的限制。
首先,配置 AWE:
sp_configure 'show advanced options', 1
RECONFIGURE
GO
sp_configure 'awe enabled', 1
RECONFIGURE
GO
重新启动 SQL Server 之后,会将以下消息写入 SQL Server 错误日志中:“已启用地址窗口化扩展插件。”
然后,配置内存:
sp_configure 'min server memory', 1024
RECONFIGURE
GO
sp_configure 'max server memory', 6144
RECONFIGURE
GO
在此示例中,内存设置引导缓冲池在 1 GB 和 6 GB 之间动态管理 AWE 映射内存。如果其他应用程序需要额外的内存,则 SQL Server 可释放不再需要的已分配 AWE 映射内存。在此示例中,AWE 映射内存最多只能释放 1 GB。
如果启用 Address Windowing Extentions (AWE) 支持,则单个 SQL Server 2000 实例最多只能使用计算机上 50% 的物理内存。
注意:该问题只发生在运行于基于 x86 或基于 x64 的计算机上的 32 位版本的 Microsoft SQL Server 2000 Service Pack 4 中。
例如,如果您的计算机具有 16 GB RAM,且启用了 AWE,则 SQL Server 2000 的单个实例只能访问 8 GB RAM。
要确定 AWE 是否已启用,请从 SQL 查询分析器运行以下脚本:
sp_configure 'show advanced options', 1
go
reconfigure
go
sp_configure 'awe enabled'
go
如果 run_value 设置为 1,则服务器上启用了 AWE。
要查看此现象,请检查系统监视器中的“SQL Server:内存管理器/总的服务器内存 (KB)”计数器。在运行 SQL Server Service Pack 3 (SP3) 的计算机上,该值最大可以为计算机上的物理内存量。在运行 SQL Server SP4 的计算机上,该值永远不会超过物理内存的 50%。
注意
该问题只出现在具有超过 2 GB RAM 的计算机上。
如果使用 AWE 内存,并且将最大服务器内存选项的值设置为低于物理内存的 50%,则不会受到此问题的影响。
AWE 并非在所有版本的 SQL Server 2000 上都可用。例如,AWE 在 MSDE、SQL Server 2000 Standard Edition、SQL Server 2000 Personal Edition 或仅包含 SQL Server 2000 工具的安装上都不可用。
如果在 IA-64 位系统上运行 SQL Server 2000 SP4,则不会受到此问题的影响。
注意:Windows Server 2003 上支持的最大内存为 4 GB。但是,Windows Server 2003 Enterprise Edition 支持 32 GB 的物理 RAM。使用物理地址扩展 (PAE) 功能,Windows Server 2003 Datacenter Edition 可支持 64 GB 的物理内存。对于下列系统,可以在 Boot.ini 文件中使用 3 GB 开关:Microsoft Windows Server 2003、Microsoft Windows Server 2003 Enterprise Edition 或 Microsoft Windows Server 2003 Datacenter Edition。
SQL Server 2000
SQL Server 2000 Enterprise 和 SQL Server 2000 Developer Edition 都可以使用下列选项:
如果在 SQL Server 中使用 Boot.ini 的 /PAE 开关和 AWE 启用选项,SQL Server 2000 就可以使用 4 GB 以上的内存。没有 /PAE 开关,SQL Server 最多只能使用 3 GB 的内存。
注意:在 Windows 2000 Data Center 上,要使 AWE 可以使用 16 GB 以上的内存,请确保在 Boot.ini 文件中没有使用 /3GB 开关。如果在 Boot.ini 文件中使用 /3GB 开关,Windows 2000 可能无法正常提供 16 GB 以上的任何内存。
在 32 GB 系统上分配 SQL Server AWE 内存时,Windows 2000 可能至少需要 1 GB 的内存来管理 AWE。
示例
下面的示例说明了如何启用 AWE 并为服务器内存最大值选项配置 6 GB 的限制:
sp_configure 'show advanced options', 1
RECONFIGURE
GO
sp_configure 'awe enabled', 1
RECONFIGURE
GO
sp_configure 'max server memory', 6144
RECONFIGURE
GO
-或- 如果在 Boot.ini 文件中使用 /3GB 开关,SQL Server 2000 最多可以使用 3 GB 的内存。
本地配置脚本
本地物理内存32GB,为操作系统保留2GB 设置最小内存 > 数据库数据大小 16GB,设置最大内存 = 物理内存 - 系统保留 = 30GB
首先,配置 AWE:
sp_configure 'show advanced options', 1
RECONFIGURE
GO
sp_configure 'awe enabled', 1
RECONFIGURE
GO
重新启动 SQL Server 之后,会将以下消息写入 SQL Server 错误日志中:“已启用地址窗口化扩展插件。”
然后,配置内存:
sp_configure 'min server memory', 16384
RECONFIGURE
GO
sp_configure 'max server memory', 30720
RECONFIGURE
GO
取消配置 AWE:
sp_configure 'show advanced options', 1
RECONFIGURE
GO
sp_configure 'awe enabled', 0
RECONFIGURE
GO
来源链接:
如何配置 SQL Server 以便使用 2 GB 以上的物理内存
Windows Server 2003 和 Windows 2000 提供大内存支持
为 SQL Server 启用 AWE 内存
(v=sql.105).aspx
阅读(508) | 评论(0) | 转发(0) |