- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
如何解决SQLServer内存不断增加问题.pdf
如何解决 SQL Server 内存不断增加问题
当 SQL Server 数据库引擎在 Microsoft® Windows NT® 或 Windows® 2000 上运行时,
其默认内存管理行为并不是获取特定的内存量,而是在不产生多余换页 I/O 的情况下获取
尽可能多的内存。为此,数据库引擎获取尽可能多的可用内存,同时保留足够的可用内存以
防操作系统交换内存。
SQL Server 实例在启动时通常获取 8 到 12MB 的内存以完成初始化过程。当实例完成
初始化后,就不会再获取更多的内存,直到用户连接到该实例并开始产生工作负荷。这 时,
该实例根据需要不停地获取内存以支持工作负荷。随着更多的用户连接并运行查询,SQL
Server 将获取支持需求所需的额外内存。该实例将继续获取内存直到达到自身的内存分配
目标,并且直到达到该目标的下限才会释放任何内存。
为了在不产生多余换页 I/O 的情况下获取尽可能多的内存,SQL Server 的每个实例
都设置一个内存获取目标,直到计算机的可用物理内存在 4MB 到 10MB 的范围内。之所以选
择该范围是因为测试表明 Windows NT 和 Windows 2000 都有最小内存交换,直到内存分配
等于可用物理内存减去 4MB。工作负荷处理任务重的 SQL Server 实例保留的可用物理内存
为范围的较低端 (4MB);工作负荷处理任务轻的实例保留的可用物理内存为范围的较高端
(10MB)。
SQL Server 实例的目标随工作负荷的改变而变化。当更多的用户连接并产生更多的工
作时,该实例倾向于获取更多的内存以使可用的内存保持在 4MB 的限制以下。当工作负荷 减
轻时,该实例将其目标调整为 10MB 的可用空间,并释放内存给操作系统。将可用空间量保
持在 10MB 与 4MB 之间可防止 Windows NT 或 Windows 2000 过多执行换页操作,同时使 SQL
Server 得以获得尽可能最大的高速缓冲存储器而不至引起额外的交换。
实例的目标内存设置与数据库缓冲池的页相对于可用池大小的需求有关。在任何即时
点,缓冲区页的总需求取决于满足所有当前执行的查询所需的数据页数。如果相对于高速缓
冲存储器内的页数,数据页的需求很大,则当前在缓冲区内的每一页很可 能在相对较短的
时间内由新页替换。这可由缓冲区管理器对象的页生命期性能计数器来度量。对于相对
较小的缓冲区有较高需求的情况将生成短生命期,而 纯粹的影响就是使 I/O 增加,因为在
页可由多个逻辑读取引用之前往往要被重写。为减轻这个问题,数据库引擎可以获取更多的
内存以增加高速缓冲存储器的大小。当页生命期长时,数据 库引擎将可用内存定位于目标
的高端 (10 MB);而当页生命期短时,数据库引擎定位于目标范围的低端 (4MB)。
随着其它应用程序在运行 SQL Server 实例的计算机上启动,它们消耗内存致使可用
物理内存量降到 SQL Server 的目标以下。SQL Server 实例于是从其地址空间释放足够内
存,以使可用内存量回到 SQL Server 的目标。如果有其它应用程序停止运行而使可用内存
增多,SQL Server 实例将增加其内存分配大小。SQL Server 可以每秒释放并获取几 MB 字
节的内存,这使它得以根据内存分配变化作出快速调整。
你可以通过设置允许 sql server 可以使用的最大内存来做限制:
最小和最大服务器内存的影响
min server memory 和 max server memory 配置选项建立由 SQL Server 数据库引擎
使用的内存量的上限和下限。数据库引擎并不立即获取 min server memory 中指定的内存
量。数据库引擎启动时只使用初始化所需的内存。随着数据库引擎工作负荷的增加,它将继
续获取支持工作负荷所需的内存。数据库引擎直到到达 min server memory 中指定的内存
量才会释放任何所需的内存。一旦到达 min server memory,数据库引擎将使用标准算法(使
操作系统的可用内存保持在 4MB 到 10MB 之间)获取和释放所需内存。唯一的区别是数据库
引擎从不将内存分配降到 min server memory 所指定的水平下,也从不获取超过 max server
memory 所指定水平的内存。
数据库引擎获取的内存量完全取决于放置在实例上的工作负荷。不处理很多请求的
SQL Server 实例可能永远达不到 min ser
您可能关注的文档
最近下载
- 标本溶血的原因及预防.pptx VIP
- 上海市所有道路名和所对应行政区域.xls VIP
- 2025年上海市英语高考二轮热点专题复习专题07阅读理解词义猜测题.docx VIP
- 非理想流动课件.pptx VIP
- 农村土地第二轮承包到期后再延长30年试点服务需求和技术要求.docx VIP
- 2025年上海市高考英语热点复习:阅读理解词义猜测题.pdf VIP
- 销售培训课件 -《销售就是要搞定人》.pdf VIP
- 2025年人教版三年级数学上册全册教案.pdf VIP
- 2025贵州贵阳市投资控股集团房地产置业有限公司招聘12人笔试备考题库及答案解析.docx VIP
- 第一单元 观察物体 单元测试(提升卷)-2025-2026学年三年级上册数学人教版(A4版).docx VIP
文档评论(0)