Take the 2-minute tour ×
Database Administrators Stack Exchange is a question and answer site for database professionals who wish to improve their database skills and learn from others in the community. It's 100% free, no registration required.

If I repeatedly notice SQL Server reporting a lot of free memory, can I likely remove about that amount of memory from the server without affecting performance? Or, can/should it use more for caching?

For this particular example, the server is running SQL Server 2012 Standard Edition on Windows Server 2012. It has 20 GB of physical memory and hosts over 100 GB of data. SQL Server is the only application running on the server.

SQLServer;Buffer Manager
    Buffer cache hit ratio       99.737 %
    Page life expectancy            874 s
SQLServer:Memory Manager
    Database Cache Memory         6,744 MB
    Free Memory                   5,937 MB
    Optimizer Memory                  5 MB
    SQL Cache Memory                 29 MB
    Target Server Memory         19,015 MB
    Total Server Memory          18,407 MB
share|improve this question
2  
Did you check settings? It smells odd that a longer running server is not using this memory. UNless most of your data is never used, or the server was recently restarted (the sql service more specific) OR the memory is not used due to settings - that makes no sense. –  TomTom Aug 31 '13 at 14:30
    
Have a look at my answer here -- that dealt with an *over*committed server, but some of the techniques can apply here as well. –  Jon Seigel Aug 31 '13 at 22:34
add comment

2 Answers

Your Page life expectancy counter is at 874 seconds. That isn't a lot. I'm guessing that the server isn't configured correctly, or something on the OS is taking the memory. Odds are this server could use more RAM to up the PLE.

share|improve this answer
add comment

If the server performing fine and there are no complains, I will leave this server alone. But, SQL Server tend to use as much memory as possible. Therefore you should check the configuration why the server not using the memory. Run some large queries to see, if the data cache get filled up. If you do not need these memory anywhere else, why would you want to reduce it?

I always use SQL Server Spotlight to diagnose my server. Download a trial version and use it for 30 days to analyze this server, unless you are comfortable with DMVs. I feel like SQL Server does not see your 20 GB of RAM.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

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