限制SQL Server内存使用量 改善内存管理

数据库 SQL Server
服务器上和SQL Server同时运行的其他应用程序使用的内存不足,这是什么原因呢?原来是SQL Server占用了大部分的内存。

SQL Server内存使用量在使用的过程中会不断增长,导致服务器上同时运行的其他应用程序所用的内存分配不足,这需要我们限制SQL Server内存使用量。

最近,为了能在数据库服务器中运行其他应用程序,在保持数据库操作系统版本不变的前提下对数据库服务器进行了软、硬件上的升级。在软件上,将操作系统从Windows 2000升级到Windows Server 2003;在硬件上,将服务器中的内存由原来的512MB增加到1GB(1024MB)。

在升级后的开始几个星期之内,服务器在使用中表现良好。但是不久后就发现,在服务器上同时运行的其他应用程序却出现了异常,不时地报出内存分配不足的警告。经过几次跟踪后发现,原来是SQL Server吞去了大部分内存所致。被SQL Server占用的内存由升级前的不到400MB一下子增加到现在的900MB,并且有不断增长的趋势。

通过查找原因才知道这是SQL Server缓冲池的预期行为。默认情况下,在启动SQL Server之后,SQL Server会根据操作系统报告的物理内存数来动态增大或缩小高速缓冲存储器的容量。只要可用物理内存大小保持在4MB到10MB之间,SQL Server缓冲池就会继续增大(保留可用物理内存在4MB到10MB之间是为了避免操作系统因为缺少内存而频繁地换页)。如果物理可用内存变得较少的时候,则SQL Server会将一些内存释放给操作系统。

为了使运行在服务器上的应用程序都能达到比较满意的效果,同时也为了能给其他应用程序分配足够的内存,需要采取措施限制SQL Server内存使用量。我们可以通过设置SQL Server数据库引擎使用的内存的上下限来达到此目的。其具体步骤是:

1.打开企业管理器,展开服务器组。

2.单击该服务器,点击鼠标右键,单击属性菜单。

3.在弹出的对话框中单击内存选项卡。

内存设置方法有两种:

1.设置min server memory和max server memory在一个范围段内。

比如,我们将它设置成最小0MB,最大255MB。这种方法在为一台服务器中运行多个应用程序分配内存时非常有用。

2.设置 min server memory 和 max server memory为同一数值。

比如,可以将它最大和最小值都设置成255MB。这样的设置方法与窗口中的另一个选项“使用固定的内存大小” 相一致。

虽然内存最小值和最大值设置是高级选项,但在设置完毕之后,最好还是先将SQL Server服务停止后再重新运行,以便SQL Server能更好地对内存进行合理安排。
 

 

 

 

【编辑推荐】

SQL SERVER口令管理的脆弱性

SQL SERVER连接DB2数据库

SQL Server级联更新的实现

sql server删除有默认值的列的方法

SQL Server创建表语句介绍

责任编辑:段燃 来源: 互联网
相关推荐

2010-07-23 10:36:43

SQL Server内

2010-07-19 14:17:47

SQL Server内

2010-07-07 09:02:30

SQL Server内

2012-08-16 10:00:35

SQL Server内存管理

2017-12-14 14:32:30

.Net内存代码

2010-07-07 13:39:33

SQL Server监

2011-02-22 14:47:52

SQL Server资

2011-02-28 08:57:10

SQL Server资内存性能调优

2010-12-24 09:15:09

AWE内存SQL Server

2011-04-07 09:56:53

SQL Server 内存

2012-08-06 13:45:38

LTE网络LTE

2019-07-07 07:00:10

Linux内存用量内存管理

2022-03-28 18:38:00

SD-WANMPLS

2011-02-22 10:37:00

SQL ServerSQL Server 性能诊断

2013-10-30 17:23:01

Chrome浏览器

2022-01-17 10:06:04

物联网安全技术

2010-10-22 14:10:12

SQL Server内

2010-07-14 17:42:12

2010-07-19 08:36:56

SQL Server内

2010-07-16 16:05:44

SQL Server更
点赞
收藏

51CTO技术栈公众号