配置SQLServer(2)——32位和64位系统中的内存配置

前言:

        本文讲述32位和64位系统中的内存配置,在SQLServer 2005/2008中,DBA们往往尝试开启AWE来限制内存。但是,在SQLServer2012以后,这个选项将被弃用,所以不能使用这种方式来控制32位实例的虚拟地址空间。如果你服务器上有很多内存,就只能升级到64位系统。下面是微软给出的内存限制:

        虽然2012以后已经弃用AWE,但是了解一下32位系统如何使用AWE(Address WindowingExtensions)来使得操作系统能够访问更多的内存。如果可用的物理内存比Maximum Server memory选项的还要多,那么SQLServer会锁定在Maximum Server memory选项,如果Maximum Server memory选项没有设置或者物理内存比这个选项设置得还要少,那么SQLServer实例会占用所有可用内存,仅保留256MB

   

准备工作:

记住当前的Maximum Server memoryMinimum Server memory的值,可以在视图sys.configurations表中查看,这个视图包含有系统级别的的配置信息。

   

步骤:

1 用以下语句设置SQLServer的最小内存:

[sql] view plaincopyprint?

  1. EXEC sp_configure 'min server memory (MB)', 1024  
  2. GO  
  3. RECONFIGURE WITH OVERRIDE ;  
  4. GO  



2
 用以下脚本设置最大内存: 

[sql] view plaincopyprint?

  1. EXEC sp_configure 'max server memory (MB)', 3000  
  2. GO  
  3. RECONFIGURE WITH OVERRIDE ;  
  4. GO  

 

分析:

        步骤1配置最小内存给SQLServer,默认值为0,可以设置最小值小于或等于max server memory的值。

        步骤2配置SQLServer的最大分配内存,默认值为2TB,这个值不能少于64M

        所有的设置都储存在SQLServerbuffer pool中。如果你使用32位系统,你的SQLServer不能使用超过3G的内存。不管你有多少可用内存在服务器上。除非开启了AWEPAE

        如果系统中的系统服务仅仅运行了SQLServer,那么设置最大内存即可,但是如果有多个服务同时运行。并且域控制器使用了最大内存,SQLServer将会内存不足,换个角度,如果SQLServer使用了最大内存,那么域控制器又会内存不足,引起,应该合理配置内存,以避免内存的溢出。

转载于:https://www.cnblogs.com/Alum/p/3550293.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值