当前位置:  数据库>sqlserver

sql server 在32位机器上使用AWE访问4GB以上内存的方法

    来源: 互联网  发布时间:2014-08-29

    本文导语:  SQL Server 使用 Microsoft Windows 地址窗口化扩展插件 (AWE) API 支持非常大的物理内存。 SQL Server 在 Microsoft Windows 2000 Server 和 Microsoft Windows Server 2003 上可以访问最高达 64 GB 的内存。 注意: 只有 SQL Server Enterprise Edition、Standard Edition ...

SQL Server 使用 Microsoft Windows 地址窗口化扩展插件 (AWE) API 支持非常大的物理内存。
SQL Server 在 Microsoft Windows 2000 Server 和 Microsoft Windows Server 2003 上可以访问最高达 64 GB 的内存。

注意:
只有 SQL Server Enterprise Edition、Standard Edition 和 Developer Edition 支持 AWE,并且 AWE 只适用于 32 位操作系统,64位操作系统不需要使用AWE。
Analysis Services 无法利用 AWE 映射内存。如果可用物理内存小于用户模式虚拟地址空间,则无法启用 AWE。

若要为 Microsoft SQL Server 启用地址窗口化扩展插件 (AWE),必须以已指定“锁定内存页”选项的 Microsoft Windows 帐户运行 SQL Server 数据库引擎,并使用 sp_configure 将 awe enabled 选项设置为 1。

标准的 32 位地址最多可映射 4 GB 内存。因此,32 位进程的标准地址空间限制为 4 GB。默认情况下,在 32 位 Microsoft Windows 操作系统中,将为操作系统保留 2 GB 空间,另外 2 GB 空间可由应用程序使用。如果在 Windows 2000 Advanced Server 的 Boot.ini 文件中指定了 /3gb 参数,则操作系统将仅保留 1 GB 的地址空间,应用程序最多可以访问 3 GB 的空间。有关 /3gb 参数的详细信息,请参阅进程地址空间。

AWE 是 Windows 的内存管理功能的一组扩展,它使应用程序能够使用的内存量超过通过标准 32 位寻址可使用的 2-3 GB 内存。AWE 允许应用程序获取物理内存,然后将非分页内存的视图动态映射到 32 位地址空间。虽然 32 位地址空间限制为 4 GB,但是非分页内存却可以远远大于 4 GB。这使需要大量内存的应用程序(如大型数据库系统)能使用的内存量远远大于 32 位地址空间所支持的内存量。


在操作系统上配置 AWE 之前,请考虑下列事项:
AWE 允许在 32 位体系结构上分配超过 4 GB 的物理内存。只有当可用物理内存大于用户模式的虚拟地址空间时,才应该使用 AWE。
若要使 32 位操作系统支持 4 GB 以上的物理内存,必须向 Boot.ini 文件添加 /pae 参数并重新启动计算机。有关详细信息,请参阅 Windows 文档。

注意:
在 Windows Server 2003 中,仅当服务器使用的是热添加内存设备时,PAE 才会自动启用。在这种情况下,您不必在配置为使用热添加内存设备的系统中使用 /pae 参数。而在其他任何情况下,都必须在 Boot.ini 文件中使用 /pae 参数才能利用超过 4 GB 的内存。
如果计算机上的可用物理内存超过 16 GB,操作系统就需要 2 GB 的虚拟地址空间供系统使用,因此只能支持 2 GB 的用户模式虚拟地址空间。为了使操作系统能够使用超过 16 GB 的内存,应确保 Boot.ini 文件中没有 /3gb 参数。如果存在该参数,操作系统就不能使用超过 16 GB 的物理内存。

注意:
SQL Server 缓冲池可以充分利用 AWE 映射内存;但是只有数据库页才能动态映射(或取消映射)到 SQL Server 的虚拟地址空间,并充分利用通过 AWE 分配的内存。对于在虚拟地址空间中永久驻留更多的用户、线程、数据库、查询和其他对象,AWE 并没有直接的帮助。


    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • java命名空间java.sql接口statement的类成员方法: executeupdate定义及介绍
  • 安装SQL2008时提示删除SQL2005Express工具的解决方法
  • java命名空间java.sql接口connection的类成员方法: nativesql定义及介绍
  • C#使用带like的sql语句时防sql注入的方法
  • java命名空间java.sql接口preparedstatement的类成员方法: executeupdate定义及介绍
  • sql无效字符引起的执行sql语句报错的解决方法
  • java命名空间java.sql接口rowid的类成员方法: getbytes定义及介绍
  • SQL Server降权运行 SQL Server 2000以GUESTS权限运行设置方法
  • java命名空间java.sql接口ref的类成员方法: getbasetypename定义及介绍
  • (X86/X64)安装sql server 2005 过程中提示“无法启动sql server的 启动”的解决方法
  • java命名空间java.sql接口databasemetadata的类成员方法: getsqlkeywords定义及介绍
  • sql数据库多用户模式修改方法
  • java命名空间java.sql接口rowid的类成员方法: tostring定义及介绍
  • 安装sql server 2008 management提示已安装 SQL Server 2005 Express的解决方法
  • java命名空间javax.sql.rowset接口joinrowset的类成员方法: getwhereclause定义及介绍
  • C#代码验证sql语句是否正确(只验证不执行sql)的方法
  • java命名空间java.sql接口statement的类成员方法: execute定义及介绍
  • Sql2000与Sql2005共存安装的解决方法
  • java命名空间java.sql接口resultset的类成员方法: getcursorname定义及介绍
  • SQL查找某一条记录的方法
  • java命名空间java.sql接口resultsetmetadata的类成员方法: getcolumntype定义及介绍
  • sql server 代理(已禁用代理xp)的解决方法
  • java命名空间javax.sql.rowset.spi类syncprovider的类成员方法: getrowsetwriter定义及介绍
  • 请问,这是什么错误!java.sql.SQLException: [Microsoft][ODBC SQL Server Driver][Named Pipes]??????? SQL Server?虽然分少,但一定给,只要您是前5名回复者中最好的以为!
  • java命名空间java.sql接口sqlinput的类成员方法: readblob定义及介绍
  • SQL查询分析工具 SQL Workbench/J
  • java命名空间java.sql接口sqlinput的类成员方法: readarray定义及介绍
  • oracle导出sql语句的结果集和保存执行的sql语句(深入分析)
  • java命名空间java.sql接口sqlinput的类成员方法: readsqlxml定义及介绍
  • SQL Server统计SQL语句执行时间的脚本
  • java命名空间java.sql接口sqlinput的类成员方法: readrowid定义及介绍


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3