Wednesday, April 27, 2011

Suggested Max Memory Settings for SQL Server 2005/2008

It is important to make sure you set the Max server memory setting for SQL Server 2005/2008 to something besides the default setting (which allows SQL Server to use as much memory as it wants, subject to signals from the host OS that it is under memory pressure). This is especially important with larger, busier systems that may be under memory pressure.  This setting controls how much memory can be used by the SQL Server Buffer Pool.  If you don’t set an upper limit for this value, other parts of SQL Server, and the operating system can be starved for memory, which can cause instability and performance problems.

This is for x64, on a dedicated DB server.

Physical RAM (GB)

MaxMem Setting

2 1500
4 3200
6 4800
8 6700
12 10600
16 14500
24 22400
32 30000
48 45000
64 59000

You can set this value with Transact-SQL like this (it may take 1-3 minutes to complete)

-- Turn on advanced options
EXEC sp_configure 'Show Advanced Options', 1
GO
RECONFIGURE
GO
-- See what the current value is for 'max server memory (MB)'
EXEC sp_configure
-- Set max memory = 45000MB 
EXEC sp_configure 'max server memory (MB)', 45000
GO
RECONFIGURE
GO

0 comments:

Post a Comment