精细分析 sql server服务器的内存配置
以前的服务器,由于内存的价格过高,一般配置的内存不是很多,超过4GB的当然就不多了.现在的服务器,配置超过4GB就很多,在配作SQL 数据库服务器后,很多的人只选默认的设置,虽然可以正常使用,可是却把大量的内存给浪费(SQL服务使用的内存不会超过1.8GB),系统的性能也不能因为的大内存而提升,这是很可惜的。
在本文中,我大致讲一下配置的过程。(如果服务器的内存少于4GB,不用配置)
1.打开系统中的大内存支持(windows):
若要启用 Windows 2000 Advanced Server 或 Windows 2000 Datacenter Server 支持,大于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 2000 Advanced Server';/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 2000 Advanced Server';/fastdetect /pae
这个改好后,要重启系统的。
2.启用锁定内存页选项(Windows):
1、启用锁定内存页选项
2、在'开始'菜单上单击'运行'子菜单,然后在'打开'框中键入'gpedit.msc'。
3、在'组策略'控制台上,展开'计算机配置',然后展开'Windows 设置'。
4、展开'安全设置',然后展开'本地策略'。
5、选择'用户权限分配'复选框。
6、详细资料窗格中随即显示出策略。
7、在详细资料窗格中,双击'锁定内存页'。
8、在'本地安全策略设置'对话框中,单击'添加'按钮。
9、在'选择用户或组'对话框中,添加有权运行 sqlservr.exe 的帐户。
3.启用SQL的AWE:
若要启用 AWE,请将 awe enabled 设置为 1。除非指定了 max server memory 的值,否
则 SQL Server 将保留几乎所有可用内存,只留下128MB 或更少。
如果已成功启用该选项,则当SQL Server 2000 实例启动时,SQL Server 错误日志中将
出现'已启用地址窗口扩展'这条消息。
awe enabled 是高级选项。如果正在使用 sp_configure 系统存储过程更改该设置,则只有
当 show advanced options 设置为 1 时才能更改 awe enabled。
code 如下,设定SQL 使用6GB的内存:
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