SQL Server буде споживати стільки пам'яті, скільки ви дозволите . За замовчуванням це число охоплювало б 100% вашої цифрової пам'яті на вашій машині. Ось чому ви бачите те, що бачите. Якщо ви даєте SQL Server 24 ГБ пам'яті, то SQL Server зробить все можливе, щоб використовувати 24 ГБ пам'яті. Тоді у вас є SQL Server і ОС, які борються за ресурси, і це завжди призведе до низької продуктивності.
Під час встановлення max server memory
ліміту конфігурації ви обмежуєте, скільки SQL Server може виділити для буферного пулу (практично там, де він зберігає сторінки даних та кеш процедур). Є й інші службовці пам'яті в SQL Server, тому для вашої конкретної версії (2008 R2 і вище) max server memory
просто керуйте буферним пулом. Але це завжди буде найбільшим споживачем пам'яті.
Довідка TechNet про вплив мінімальної та максимальної пам'яті сервера
Параметри конфігурації пам’яті min та максимальної пам'яті сервера встановлюють верхню та нижню межі обсягу пам’яті, використовуваного буферним пулом бази даних Microsoft SQL Server.
Що стосується питання, скільки пам’яті потрібно залишити для ОС , то це загальноприйнятий показник. Це дійсно все залежить, головним чином від того, які інші процеси працюють на сервері . За умови, що це справді виділений сервер (і це майже ніколи не буває). Мені подобається бачити принаймні 4 Гб оперативної пам’яті для ОС (і навіть більше на великих апаратних коробках). Але найголовніше, стежте за тим, скільки є невикористаної пам'яті. Будьте ліберальні та надайте SQL Server більше пам’яті, якщо ви помітили багато доступної (можна контролювати через perfmon) та невикористаної пам’яті (звичайно, завжди залишаючи невеликий буфер для цих кутових ситуацій).