配置SQL Server内存设置(一)

日期: 2009-01-12 作者:Denny Cherry翻译:陈柳/曾少宁 来源:TechTarget中国 英文

与其它的应用一样,SQL Server应用需要内存才能运行。但是,与大多数应用不同的是,SQL Server仅仅允许你决定它可以使用多少内存。这是很有用的,因为SQL Server需要更多的内存。   服务器内存选项是在GUI中设置或使用sp_configure存储过程的调整“最大化服务器内存(MB)设置”来设置的。

     图1:设置服务器内存属性   与大多数应用不同的是,你可以通过启用AWE(Address Windowing Extensions)内存设置来配置SQL Server使用超过2GB的RAM,这可以在相同的内存设置GUI上设置或者通过sp_configure存储过程来调整……

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

与其它的应用一样,SQL Server应用需要内存才能运行。但是,与大多数应用不同的是,SQL Server仅仅允许你决定它可以使用多少内存。这是很有用的,因为SQL Server需要更多的内存。

  服务器内存选项是在GUI中设置或使用sp_configure存储过程的调整“最大化服务器内存(MB)设置”来设置的。

  设置服务器内存属性

  图1:设置服务器内存属性

  与大多数应用不同的是,你可以通过启用AWE(Address Windowing Extensions)内存设置来配置SQL Server使用超过2GB的RAM,这可以在相同的内存设置GUI上设置或者通过sp_configure存储过程来调整“AWE启用”设备。这两个都是高级设置,在没激活“显示高级选项”设置之前是无法看到的。

  SQL Server需要的RAM总数

  有一说法很适合Microsoft Windows:当拿不定主意时,就多买些RAM。这个说法对于SQL Server就不是很适用了,除非SQL Server只拥有非常小的数据量。SQL Server要求服务器上至少有512 RAM,而Microsoft 推荐使用1GB RAM。我个人的建议是服务器上至少有1.5 GB RAM,1GB RAM用于SQL Server, 512 MB RAM用于Windows。如果SQL Server 使用了服务器上所有的内存,而Windows 没有足够的内存来运行,那么SQL Server的运行将会类似于内存不足情况。当Windows 开始在硬盘驱动器进行越来越多的RAM页面调度时,查询响应时间将会增加,CUP使用率将上升以及磁盘I/O将暴涨。

  虽然跟SQL Server 2000不同的是,SQL Server 2005没有RAM限制,但是软件选择依然是很重要的。当选择你的操作系统(OS)时,你一定要选择符合你的内存要求的正确的版本。Windows 2003 Enterprise Edition支持最多64GB RAM——远远超过Windows 2003 Data Center Edition要求。因此,购买一个128GB RAM的服务器和Windows 2003 Enterprise Edition将会浪费一半的内存。

  最小和最大服务器内存设置

  在SQL Server中有两种数字内存设置——最小服务器内存和最大服务器内存。虽然关于最小服务器内存设置是如何工作的存在一些争论,但是最大服务器内存是很明确的:它只不过就是SQL Server可使用的最高的内存总数。

  很多人认为最小服务器内存设置是指在SQL第一次启动时,SQL Server应该使用多少内存,但是事实并非如此。最小服务器内存设置是一种低水印设置。如果Windows需要从SQL Server回收内存,它将要求SQL Server释放它占用的内存。SQL Server将返回内存到操作系统,直到占用的内存总量达到最小服务器设置值。

  通常情况下,我建议的最大内存设置为低于服务器内存总额512MB的值。但当服务器上大约有8GB RAM时,我会将这一建议值改为1GB内存。我之所以这样做是因为有这样大内存的系统上通常运行着很多系统进程——比如备份软件、大量DTS/SSIS包运行等等——所以额外的内存对于操作系统是很有益的。

相关推荐