积极答复者
关于SQLServer 2000企业版启用AWE技术问题,头疼ing...

问题
-
环境如下,服务器操作系统为:Windows 2003 Server enterprise edition R2 sp2
物理内存为8GB
安装SQLServer2000 standard edition sp4
启用awe的步骤
1.在c:\boot.ini文件最后加入 /pae,然后重启操作系统
2.启用锁定内存页选项,添加有权运行sqlservr.exe的帐户到"内存中锁定页"的策略中(这里我加入的是administrator)
3.在SQL Server2000中启用awe enabled
3.1执行:
exec sp_configure 'show advanced option',1;
reconfigure;
go;
3.2执行:
exec sp_configure 'awe enabled',1;
reconfigure;
go;
3.3设定max_server_memory和min_server_memory
exec sp_configure 'max_server_memory',6144;
reconfigure;
exec sp_configure 'min_server_memory',256
reconfigure;
4.重启SQLServer服务
5.在SQLServer2000查询分析器中执行
select * from sysperfinfo
order by counter_name
发现Target Server Memory(KB)为1660784
显示不是我所期望的6144000
请问是什么原因呢?
同样的步骤在SQL Server2005(同样是standard edition)中执行完毕后,其Target Server Memory接近6144000
非常感谢!
答案
-
首先,还是建议 lz 换 64 位 OS 和 64 位 SQL 比较好,即使 AWE 也不能和 64位比。
1. /3GB 32位 OS 给每个应用程序分配一个32位的内存地址空间,也就是4GB,其中2G是OS自己使用,另2G是应用程序使用。 /3GB 开关是告诉OS,你自己只使用1G,另3G都给应用程序。 /3GB 在 AWE环境中可用可不用,看情况吧。 一般是2GB地址空间不足,特殊情况才用 /3GB.
2. /PAE 物理地址扩展是告诉 32位的OS,使用36位的地址空间。 这个是因为 32位CPU 本身就支持 36位寻址,细节还是查 intel 网站吧。
AWE 是 SQL 2000 企业版的功能,标准版不支持。SQL2005 以后的标准版中才有。 SQL 2000 的AWE + OS 的PAE 虽然能使 32位的SQL 2000 使用 超过2G的内存,但是它将所有SQL相关数据装入物理内存,不使用页面内存。所以有好处,也有危险,要详细评估。
以上所有这些, 我在Windows server版曾经发过。在 TechNet文档库中都有,Windows server “企业内存架构”,搜一下这些关键字吧。
- 已标记为答案 Nai-dong Jin - MSFTModerator 2010年4月29日 6:28
全部回复
-
把/3GB开关加上
8gb的物理内存要两个一起加
超过8gb可以不要/3gb
小于4gb只用加/3GB
你好,SQLServer有这样的一个规定吗?我记得好像是超过4GB的时候就去掉/3gb的开关的..
另外我在SQLServer的日志中看到如下报错:
Cannot use Address Windowing Extensions because lock memory privilege was not granted.
同时,http://support.microsoft.com/kb/811891这篇文章说了支持SQLServer 2000企业版,不知道对SQLServer标准版支持不支持呢
-
把/3GB开关加上
8gb的物理内存要两个一起加
超过8gb可以不要/3gb
小于4gb只用加/3GB
你好,SQLServer有这样的一个规定吗?我记得好像是超过4GB的时候就去掉/3gb的开关的..
另外我在SQLServer的日志中看到如下报错:
Cannot use Address Windowing Extensions because lock memory privilege was not granted.
同时,http://support.microsoft.com/kb/811891这篇文章说了支持SQLServer 2000企业版,不知道对SQLServer标准版支持不支持呢
Cannot use Address Windowing Extensions because lock memory privilege was not granted.
說明你的sqlserver服務的啟動帳號并未加入鎖定內存頁的帳號中
If you haven't all the things you want,be grateful for the things you don't have that you didn't want. -
如果加上 /3gb就只能使用到3G的內存。。
我在服務器上安裝sqlserver2000的時候 都只是使用/pae參數就好了
If you haven't all the things you want,be grateful for the things you don't have that you didn't want.
请问你使用AWE的时候遇到过这样的情况吗?SQLServer日志总是提示:
"Cannot use Address Windowing Extensions because lock memory privilege was not granted."
但是我已经将administrator用户加入到了启用锁定内存页面策略中了啊,
并且我SQLServer服务的启动帐号也改成了administrator(默认是本地系统帐户)
不知道是不是SQL Server 2000 Standard Edition不支持AWE啊?
-
Operating System
Enterprise Edition
Standard Edition
Personal Edition
Developer Edition
Desktop Engine (MSDE 2000)
SQL Server CEEnterprise Evaluation Edition Windows 2000 DataCenter 64 GB 2 GB 2 GB 64 GB 2 GB N/A 64 GB Windows 2000 Advanced Server 8 GB 2 GB 2 GB 8 GB 2 GB N/A 8 GB Windows 2000 Server 4 GB 2 GB 2 GB 4 GB 2 GB N/A 4 GB Windows 2000 Professional N/A N/A 2 GB 2 GB 2 GB N/A 2 GB Windows NT 4.0 Server, Enterprise Edition 3 GB 2 GB 2 GB 3 GB 2 GB N/A 3 GB Windows NT 4.0 Server 2 GB 2 GB 2 GB 2 GB 2 GB N/A 2 GB Windows NT 4.0 Workstation N/A N/A 2 GB 2 GB 2 GB N/A 2 GB
If you haven't all the things you want,be grateful for the things you don't have that you didn't want. -
Operating System
Enterprise Edition
Standard Edition
Personal Edition
Developer Edition
Desktop Engine (MSDE 2000)
SQL Server CEEnterprise Evaluation Edition Windows 2000 DataCenter 64 GB 2 GB 2 GB 64 GB 2 GB N/A 64 GB Windows 2000 Advanced Server 8 GB 2 GB 2 GB 8 GB 2 GB N/A 8 GB Windows 2000 Server 4 GB 2 GB 2 GB 4 GB 2 GB N/A 4 GB Windows 2000 Professional N/A N/A 2 GB 2 GB 2 GB N/A 2 GB Windows NT 4.0 Server, Enterprise Edition 3 GB 2 GB 2 GB 3 GB 2 GB N/A 3 GB Windows NT 4.0 Server 2 GB 2 GB 2 GB 2 GB 2 GB N/A 2 GB Windows NT 4.0 Workstation N/A N/A 2 GB 2 GB 2 GB N/A 2 GB
If you haven't all the things you want,be grateful for the things you don't have that you didn't want.
这个图的意思是SQLServer2000标准版无论是否使用awe都只能使用2GB内存? -
對
If you haven't all the things you want,be grateful for the things you don't have that you didn't want.那你換個帳號作為sqlserver的啟動帳號,然后將該帳號加入鎖定內存頁中呢?
这个方法也试用了,还是报同样的错误
"Cannot use Address Windowing Extensions because lock memory privilege was not granted."看来是版本的问题了..可惜我手里没有企业版做测试...
非常感谢Wison Ho
-
首先,还是建议 lz 换 64 位 OS 和 64 位 SQL 比较好,即使 AWE 也不能和 64位比。
1. /3GB 32位 OS 给每个应用程序分配一个32位的内存地址空间,也就是4GB,其中2G是OS自己使用,另2G是应用程序使用。 /3GB 开关是告诉OS,你自己只使用1G,另3G都给应用程序。 /3GB 在 AWE环境中可用可不用,看情况吧。 一般是2GB地址空间不足,特殊情况才用 /3GB.
2. /PAE 物理地址扩展是告诉 32位的OS,使用36位的地址空间。 这个是因为 32位CPU 本身就支持 36位寻址,细节还是查 intel 网站吧。
AWE 是 SQL 2000 企业版的功能,标准版不支持。SQL2005 以后的标准版中才有。 SQL 2000 的AWE + OS 的PAE 虽然能使 32位的SQL 2000 使用 超过2G的内存,但是它将所有SQL相关数据装入物理内存,不使用页面内存。所以有好处,也有危险,要详细评估。
以上所有这些, 我在Windows server版曾经发过。在 TechNet文档库中都有,Windows server “企业内存架构”,搜一下这些关键字吧。
- 已标记为答案 Nai-dong Jin - MSFTModerator 2010年4月29日 6:28