在32位操作系统上,要支持4GB以上的物理内存,必须要打开AWE地址窗口化扩展插件,不然MSSQL只能认定<=2G的内存,不管你实际物理内存有多大。具体操作步骤如下:

激活AWE,

需要执行sp_configure系统程序:

SQL code

EXEC sp_configure 'awe enabled', 1

GO

RECONFIGURE WITH OVERRIDE

一、启用“锁定内存中的页”选项
1、在“开始”菜单上,单击“运行”。在“打开”框中,键入 gpedit.msc。
   将打开“组策略”对话框。
2、在“组策略”控制台上,展开“计算机配置”,再展开“Windows 设置”。
3、展开“安全设置”,再展开“本地策略”。
4、选择“用户权利指派”文件夹。
   细节窗格中随即显示出策略。
5、在该窗格中,双击“锁定内存中的页”。
6、在“本地安全策略设置”对话框中,单击“添加”按钮。
7、在“选择用户或组”对话框中,添加有权运行 sqlservr.exe 的帐户

二、配置 AWE enabled 选项
1、在对象资源管理器中,右键单击服务器并选择“属性”。
2、单击“内存”节点。
3、在“服务器内存选项”下,选择“使用 AWE 分配内存”。

三、启用物理地址扩展 (PAE) X86
1、打开 Windows 资源管理器。
2、在“工具”菜单上,单击“文件夹选项”。
3、在“查看”选项卡上,单击“显示所有文件和文件夹”,清除“隐藏受保护的操作系统文件”复选框,然后单击“确定”。如果显示警告对话框,单击“是”以继续。
4、在根文件夹(如 C:)下查找 Boot.ini 文件并删除它的只读属性。
5、打开 Boot.ini 文件,然后将 /PAE 参数添加到 ARC 路径中,如以下 Windows Server 2003, Datacenter Edition 示例所示:
   如果物理内存是4GB的,用/3GB开关:
   multi(0)disk(0)rdisk(0)partition(2)\WINNT="Microsoft Windows Server 2003" /fastdetect /3GB /Userva=2900
   如果物理内存是大于4GB的,用/PAE开关:
   multi(0)disk(0)rdisk(0)partition(2)\%systemroot%="Windows Server 2003, Datacenter Edition" /PAE
6、在“文件”菜单上,单击“保存”。
7、还原 Boot.ini 文件的只读属性。
8、为使更改生效,请重新启动计算机。
========================================================================
Once new Subject!!!

如何实现MSSQL 大内存的支持

SQL服务使用的内存一般默认不会超过1.8G,因此就算你的服务器有N个G的内存,也未见访问会变快很多。这就是很多由于数据大,访问慢,升级服务器后看到的情况。

 

 

我大致讲一下配置的过程.(如果服务器的内存少于4G,不用配置)(网上完全讲这个的,没有见过,随手写一个)

  1.打开系统中的大内存支持(windows)

  若要启用 Windows 2003 大于4GB的物理内存,必须将参数 /pae 添加到 boot.ini 文件中。

  [boot loader]
  timeout=0
  default=multi(0)disk(0)rdisk(0)partition(1)WINNT
  [operating systems]
  multi(0)disk(0)rdisk(0)partition(1)WINNT="Microsoft Windows 2003...."
  /fastdetect

  改为

  [boot loader]
  timeout=0
  default=multi(0)disk(0)rdisk(0)partition(1)WINNT
  [operating systems]
  multi(0)disk(0)rdisk(0)partition(1)WINNT="Microsoft Windows 2003....""
  /fastdetect /pae

  这个改好后,要重启系统的

  2.启用锁定内存页选项(windows)

  启用锁定内存页选项

  在"开始"菜单上单击"运行"子菜单,然后在"打开"框中键入"gpedit.msc"。

  在"组策略"控制台上,展开"计算机配置",然后展开"Windows 设置"。

  展开"安全设置",然后展开"本地策略"。

  选择"用户权限分配"复选框。

  详细资料窗格中随即显示出策略。

  在详细资料窗格中,双击"锁定内存页"。

  在"本地安全策略设置"对话框中,单击"添加"按钮。

  在"选择用户或组"对话框中,添加有权运行 sqlservr.exe 的帐户。

  3.启用SQL的AWE

  若要启用 AWE,请将 awe enabled 设置为 1。除非指定了 max server memory 的值,否

  则 SQL Server 将保留几乎所有可用内存,只留下 128 MB 或更少。

  如果已成功启用该选项,则当 SQL Server 2000 实例启动时,SQL Server 错误日志中将

  出现"已启用地址窗口扩展"这条消息。

  awe enabled 是高级选项。如果正在使用 sp_configure 系统存储过程更改该设置,则只有

  当 show advanced options 设置为 1 时才能更改 awe enabled。

  code 如下,设定SQL 使用6G的内存

  sp_configure 'show advanced options',1
  RECONFIGURE
  GO
  sp_configure 'awe enabled',1
  RECONFIGURE
  GO
  sp_configure max server memory, 6144
  RECONFIGURE
  GO

  必须重新启动 SQL Server 2000 实例才能使更改生效。

  net stop mssqlserver

  net start mssqlserver

  这样,SQL 服务启动后,就会把6G的内存给锁定,完全供SQL使用

  参照SQL帮助文件


=================

//查看是否开启awe

sp_configure 'show advanced options', 1
go
reconfigure
go
sp_configure 'awe enabled'
go

如果 run_value 设置为 1,则服务器上启用了 AWE。