Назад | Перейти на главную страницу

Почему sql server не использует всю доступную память

У меня есть стандартный 64-битный SQL-сервер 2012 с 64 ГБ ОЗУ и 40 ядрами процессора. В свойствах сервера я вижу, что вся оперативная память указана в поле памяти на общей вкладке. На вкладке «Память» я установил минимальное значение 50 000 МБ, а максимальное значение по-прежнему является значением по умолчанию.

И RAMMap, и диспетчер задач показывают, что MSSQL использует 27 ГБ и доступно 37 ГБ.

В чем дело? Почему sqlserver и сервер отчетов не используют всю оперативную память, когда я запускаю большой отчет?

Вы сказали в комментарии выше, что ваши базы данных всего около 10 ГБ. SQL Server может легко загрузить их целиком в память, включая данные, индексы и временные данные из ваших запросов. Это хорошо и обеспечивает лучшую производительность, чем чтение с диска.

Это означает, что ваши запросы недостаточно велики, чтобы заполнить память. Это хорошо, если вы не видите интенсивных операций ввода-вывода при выполнении отчета.