В настоящее время на наших машинах SQL Server возникают сбои.
Похоже, что как только сервер на том же хосте (VMWare), что и наши SQL-серверы, запускает процедуру обслуживания.
Серверы SQL раздуваются, теряя почти всю память.
Далее я ожидал, что SQL Server получит обратно свою память после периода обслуживания.
Однако этого никогда не происходит, SQL Server останется в нижней части памяти, пока мы не выполним перезагрузку.
Выше вы можете видеть, что всплывающее окно (черная линия) начинается и заканчивается во время нашего окна обслуживания.
Но потребляемая память не возвращается к ожидаемому уровню.
На следующее утро мы вынуждены перезагружаться, после чего память восстанавливается.
Эта перезагрузка должна выполняться через Vsphere, так как машина полностью не отвечает, и мы не можем войти в нее.
В ответ мы установили резервирование памяти на всех наших производственных машинах.
Однако для наших машин STG и DEV в нашей инфраструктуре просто недостаточно памяти, чтобы зарезервировать все.
Как можно было бы решить нашу проблему, не перегружая нашу среду VMware?
В чем причина того, что SQL Server не может вернуть потерянную память без перезагрузки?
Я думал о том, чтобы зарезервировать 4 ГБ памяти для каждого SQL Server, чтобы обеспечить постоянный доступ к минимуму рабочей памяти.
Однако без уважительной причины для этой оговорки я не могу оправдать просьбу об этом.