SQLServer使用内存有两种情况    
第一种情况: 动态改变它的内存需求
默认情况下,SQL Server 会依据可获得的系统资源动态改变它的内存需求。如果 SQL Server 需要更多的内存,它会要求操作系统确定是否有空闲的物理内存可用,并使用可用的内存。若 SQL Server 不再需要当前分配给它的内存,它就将内存释放给操作系统。当 SQL Server 动态使用内存时,它要求系统定期地检测可用的物理内存数量。SQL Server 根据服务器活动增大或收缩高速缓冲存储器,以使可用物理内存保持在 4 MB 到 10 MB 之间。这就避免了系统进行换页操作。也就是说,这种情况下SQL SERVER 本身不会使物理可用内存小于4M,如果比较长的时间内都小于4M的话,则要看一下是不是该服务器上其它应用程序有问题。
第二种情况:限制使用内存
使用 set working set size 为sql server保留等于服务器内存设置的物理内存空间。即使是sql server 进程此时是空闲的,系统也不会将 SQL Server 页交换出去。
使用min server memory 保证sql server 使用的最小内存。SQL Server 启动时不立即分配 min server memory 中所指定的内存量。但是,当内存使用由于客户端负荷而达到该值后,SQL Server 将无法从已分配的缓冲池中释放内存。
使用max server memory 则防止 SQL Server 使用多于指定数量的内存,这样剩余的可用内存可以快速运行其它应用程序。SQL Server 启动时不立即分配 max server memory 中所指定的内存。内存使用随 SQL Server 的需要而增长,直到达到 max server memory 中所指定的值。SQL Server 无法超过该内存使用值,除非增加 max server memory 值。
第一种情况比较适用于服务器专做sql server服务器的情况,第二种情况适用于为在同一台计算机上运行的其它应用程序保留一定的内存以便于快速响应。(另:如果想动态分配sql server 的内存,则不要设置set working set size 选项,使用默认值即可)

所以,监视 SQL Server 所使用的内存和计数器有助于确定: 是否由于缺少可用物理内存存储高速缓存中经常访问的数据而导致瓶颈存在。如果是这样,SQL Server 必须从磁盘检索数据。 是否可通过添加更多内存或使更多内存可用于数据高速缓存或 SQL Server 内部结构来提高查询性能。 SQL Server 需要从磁盘读取数据的频率。与其它操作相比,例如内存访问,物理 I/O 会耗费大量时间。尽可能减少物理 I/O 可以提高查询性能。
 

关联文档