当前位置: 首页 > 图文教程 > 数据库 > MYSQL > 精细分析 SQL server服务器的内存配置

MYSQL
mysql 常用数据库语句 小练习
MYSQL ERROR 1045 (28000): Access denied for user (using password: YES)问题的解决
mysql 字符集的系统变量说明
MySQL 在触发器里中断记录的插入或更新?
将MySQL数据库移植为PostgreSQL
mysql 操作总结 INSERT和REPLACE
linux mysql忘记密码的多种解决或Access denied for user ''root''@''localhost''
运用mysqldump 工具时需要注意的问题
mysql 优化日记
MySQL 字符串函数大全
mysql 截取指定的两个字符串之间的内容
MySQL 备份还原数据库批处理
mysql 数据库中my.ini的优化 2G内存针对站多 抗压型的设置
Mysql 数字类型转换函数
mysql 动态生成测试数据
mysql 显示SQL语句执行时间的代码
mysql 设置查询缓存
MYSQL explain 执行计划
MySQL 有输入输出参数的存储过程实例
巧用mysql提示符prompt清晰管理数据库的方法

MYSQL 中的 精细分析 SQL server服务器的内存配置


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-17   浏览: 93 ::
收藏到网摘: n/a

以前的服务器,由于内存的价格过高,一般配置的内存不是很多,超过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 /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
 
这样,SQL 服务启动后,就会把6G的内存给锁定,完全供SQL使用。