We have a sql 2005 x64 database running on Windows 2003 SP2 x64 on a virtual machine (I know this isn't ideal, but it's a business requirement). The server has 26GB of RAM allocated and we have set SQL Server's max ram at 16GB, analysis server at 7GB. Windows normally reports that we have about 2GB of free physical memory sitting around on the box.

For some reason today we only have about 100MB of free physical memory. There are no abnormal processes running and SQL Server and Analysis server are sitting just below their respective caps. We tried stopping and starting the sql server about 4 hours ago which freed up all the memory, however it's since dipped back down to 100mb. This is shown in Perfmon and Task manager

There are no obvious new processes running, and nothing consuming noticably more memory than normal.

It doesn't seem to be affectind database performance, however I'm concerned by this sudden unexplained change. No updates have been carried out since we restarted on Monday night. It's been running fine since then until today.

Can anyone suggest anything that I should check to find what's going on with the physical memory?

  • Should have added, I'm not sure if this is better here or on the dba forum. I chose this one because I think it's a server/memory issue. If mods think it's better on dba forum please move it – Greg Jul 20 '12 at 6:31
  • For some reason the memory all came back between 2-3am Saturday morning. Still no idea what was using it – Greg Jul 23 '12 at 0:37

Is the server under any load? The more memory SQL Server uses the better, you don't want 2GB of free memory on a SQL server sitting around doing nothing when it could be better used caching indexes, query plans, etc.


  • it's not under heaps of load. The CPU is averaging 20-25%. I agree that it's better to use more memory, but based on task manager the sql process is using the same amount of memory as always. Something else is chewing up the memory but I don't know what – Greg Jul 20 '12 at 22:37
  • Although this doesn't directly answer the question, it did lead to the answer. Turns out the virtual box it was running on was running some intensive tasks and had changed the memory allocation to the SQL box. – Greg Jul 24 '12 at 5:02
  • Glad you figured it out. It wasn't quite clear from your question whether you were monitoring memory usage on the Hypervisor or on the virtual machine itself. – jbuch Jul 24 '12 at 14:33

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.