系统pipe理页面文件使用所有可用空间,分配未使用的物理内存

问题:

我们的虚拟化数据库服务器上的一些东西正在使用大量的页面文件。 我们注意到,一个星期前,操作系统驱动器在一个下午从30 + GB的可用空间变成了大约500KB的可用空间。 我find了一个巨大的页面文件(75 + GB)的forms用完了空间。 我closures了系统pipe理的页面文件,并将其分成4个逻辑磁盘(4个不同的物理arrays)。 我们现在只是面临内存不足的错误,而不是服务器似乎有几千兆字节的未使用的RAM,而不是耗尽硬盘空间和内存不足的错误。

我不知道如何find确切的原因,但是我已经运行了一些我曾经希望能够使问题的根源非常清楚的工具,但是对我来说没有什么明显的。

细节:

  • 运行Sql Server 2008的虚拟化Windows Server 2008 R2
  • 分配给VM的32 GB静态分配的RAM
  • Sql Server被configuration为使用18GB
  • 小MySql实例也在运行
    • query_cache_limit设置为8MB
    • query_cache_size设置为128MB
  • 有域控制器的angular色,是一个全球目录(是的,我知道它不应该是一个域控制器,但我们有限的资源)
  • 页面文件分解成4个逻辑磁盘上的4个部分,每个逻辑磁盘都是它自己的vhd在主机虚拟服务器上的物理arrays上
    • 页面文件设置为8192MB分钟,每个部分最多12288MB
    • 原始页面文件是48GB并dynamic扩展
  • 线程和进程在问题期间保持相同的数字,而问题不会发生 – 线程:〜720-750,进程:〜62

我试过的东西:

  • 限制SQL Server到更less的RAM – 14GB – 没有效果
  • 停止并禁用MySql5.5服务,然后重新启动
  • 增加Sql Server使用更多的RAM – 28GB – 没有效果
  • 由Sysinternals运行RAMMap – 没有什么不寻常的出现

我无法永久停止MySql服务,并且Sql Server服务需要在白天继续运行。 似乎有内存或页面文件的使用情况,远程服务器甚至不可能由于缺乏资源,然后不久,我可以再次连接。 几分钟后,我甚至不能打开记事本或taskmanager。 屏幕上出现大量与内存不足有关的错误信息(我没有这个function,因为这个时候没有问题,但是在发生错误时我会更新错误)。

整个过程中,taskmanager说有几GB的空闲物理内存(在12GB和2GB之间,取决于分配给Sql Server的内存)

有一件事,我怀疑最初可能起到了一个作用,在主机服务器上的一个arrays有一个失败的磁盘,另一个在预测故障(raid5,3个磁盘),所以如果写入延迟,我认为他们可能堆积在内存或页面文件中。

有什么我可以最初尝试确定高页面文件的使用率,希望显示一个进程列表,他们正在使用的页面文件和物理内存分解了多less? 或者有什么办法来判断这个内存使用是否是硬件或操作系统更严重的问题的症状?