사실, 당신이 찾고있는 것을 얻기위한 깔끔한 작은 트릭이 있습니다. 문제/질문은 SQL Server를 적극적으로 필요로하지 않을 수도있는 메모리를 "일시적으로"포기시키고, 필요에 따라 다시 보도록 허용하는 방법입니다.
이렇게하려면 다음 스크립트를 실행 : {낮은 물 마크}과 (MB)에서 {워터 마크 (water mark)}에 대한 자신의 값
EXEC sys.sp_configure N'show advanced options', N'1'
RECONFIGURE WITH OVERRIDE
GO
EXEC sys.sp_configure N'max server memory (MB)', N'{low water mark}'
GO
RECONFIGURE WITH OVERRIDE
GO
EXEC sys.sp_configure N'max server memory (MB)', N'{High water mark}'
GO
RECONFIGURE WITH OVERRIDE
GO
EXEC sys.sp_configure N'show advanced options', N'0'
RECONFIGURE WITH OVERRIDE
GO
를 착용합니다.
이렇게하면 메모리를 최소량으로 강제 실행 한 다음 SQL Server에서 필요로하거나 원할 경우 즉시 다시 열 수 있습니다.
남은 일은 스크립트를 정기적으로 실행하도록 예약하는 것입니다.
권장 사항 :
SQL Server가 많이 사용되지
, 6 시간마다 자동으로 실행 해보십시오. 사용 빈도가 높은 경우 24 시간마다 한 번 실행하십시오 (예 : 한밤중 또는 하루가 시작되기 직전). 사용량은 다양합니다.
이 수치는 어떻게 측정합니까? 작업 관리자가 오해의 소지가있는 수치를 제공 할 수 있음을 명심하십시오 (저는 항상 perfmon을 선택하고 개인/가상 바이트를 보게됩니다) –
TaskCommon과 PerformanceCounter 클래스를 사용하는 별도의 dotnet 응용 프로그램을 사용하여 SQL Server를 모니터링하고 있습니다. –