查看SQL的高速cachingRAM使用情况?

我希望这有一个非常简单的解决scheme,但我有一种感觉,它不会。 我还没有find任何其他地方的任何信息,这不是一个好的开始!

基本上我们正在运行SQL Server 2008Windows Server 2008 R2计算机上有16GB内存

问题是,我们的内存使用率一直在上升到15.6GB,并导致我们的问题,我想知道如果它可能是SQL的caching。

现在我们已经configuration了SQL来使用13GB的最小/最大值,但是我仍然担心这可能是其他的东西在吃内存,所以在我重置服务器并清理掉所有使用它之前,我想我会尝试看看它是否是SQL背后。

我怎样才能看到SQL的cachingRAM使用的大小? 这只是任务pipe理器中的人物吗?

谢谢你的帮助。

PERFMON.EXE

首先看看Process对象types。 每个进程都有一个实例,包含虚拟字节,虚拟字节峰值,工作集和工作集峰等指标。 SQL Server实例将以进程名称“sqlservr”命名。 查看所有实例,您可以快速查看哪个进程导致最多的内存消耗。

接下来看看SQL Server自己的计数器。 在SQL Server:Buffer Manager对象中,您可以findSQL Server自己的计数器。 您需要查看统计所有由SQL Server内部跟踪的内存的“总计页数”计数器。 计数器是在页面中 ,所以你需要乘以8192来获取字节。

Process Virtual Bytes计数器和SQL自己的Total Pages之间可能会有很大的差异。 当SQL使用AWE映射内存时,可能会发生这种情况,SQL也可能在x64平台上使用AWE。

您还可以跟踪isnide中的SQL Server元数据消耗,查看sys.dm_os_memory_clerks或运行DBCC MEMORYSTATUS 。

如果您发现SQL Server使用内存:closures会话,请从键盘上放下手,然后走开 。 这是正常的,预期的和期望的行为。 如果您需要任何其他进程的内存,请将该进程从与SQL相同的主机移开。 不要在运行SQL Server的同一主机上运行其他任何东西 (不要IIS,不要ASP,不要传播,不要直stream,不要使用DNS / Winds, 不要运行任何东西 )。

只是一点点的评论:如果你可以自由地“ 重置服务器,并清除所有使用它 ”,那么你也可以简单地停止SQL Server服务。

如果你这样做,你肯定会知道它是否真的是用尽了所有内存的SQL Server。