博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
[置顶] 第十七章——配置SQLServer(2)——32位和64位系统中的内存配置
阅读量:7220 次
发布时间:2019-06-29

本文共 1045 字,大约阅读时间需要 3 分钟。

前言:

        本文讲述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 memory和Minimum Server memory的值,可以在视图sys.configurations表中查看,这个视图包含有系统级别的的配置信息。

 

步骤:

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

 

EXEC sp_configure 'min server memory (MB)', 1024GORECONFIGURE WITH OVERRIDE ;GO

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

 

 

EXEC sp_configure 'max server memory (MB)', 3000GORECONFIGURE WITH OVERRIDE ;GO

 

分析:

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

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

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

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

 

转载地址:http://awhym.baihongyu.com/

你可能感兴趣的文章
《产品设计与开发(原书第5版)》——1.2 谁来设计和开发产品
查看>>
Gartner:75%的App无法通过明年标准安全测试
查看>>
《文明之光 第一册》一一7.3 第二节 最珍贵的财富(1)
查看>>
《树莓派Python编程入门与实战》——3.8 使用适当的工具
查看>>
使用云市场快速搭建小型电商网站
查看>>
如何使用数据库12.2简化数据验证代码?
查看>>
《DevOps:软件架构师行动指南.》导读
查看>>
《应用程序性能测试的艺术(第2版)》—第2章 2.3节性能测试工具集:概念验证...
查看>>
《HTML5 开发实例大全》——1.7 实现下拉弹出效果
查看>>
《Python数据可视化编程实战》—— 1.1 介绍
查看>>
《代码整洁之道》—第1章1.7节前传与原则
查看>>
精通Python网络爬虫:核心技术、框架与项目实战.2.1 网络爬虫技能总览图
查看>>
《Spark大数据分析:核心概念、技术及实践》一 第2章 Scala编程
查看>>
《Puppet实战手册》——1.10 利用Git钩子自动进行语法检查
查看>>
《解读NoSQL》——2.9 小结
查看>>
机器学习中的常用距离
查看>>
如何做好 Linux 内核安全处理
查看>>
多域名部署在同一tomcat实例中
查看>>
开源大数据周刊-第49期
查看>>
PostgreSQL 10.0 preview 功能增强 - WAL一致性校验
查看>>