SQL Server 메모리를 해제하는 방법?


9

로컬 컴퓨터에 SQL Server 샌드 박스를 설치했습니다. SQL Server 인스턴스에서 사용할 수있는 메모리를 1000MB로 설정했습니다. 집중적 인 작업을 실행하면 메모리 사용량이 최대 1000MB까지 증가합니다. 작업이 끝나면 SQL Server는 여전히 메모리를 보유하고 있습니다. 이 메모리 예약을 해제하는 방법?


2
당신 min server memorymax server memory 설정 은 무엇입니까 ? SQL Server가 지정한 최소값을 예약하면 설정을 변경하거나 인스턴스를 바운스하지 않으면 최소값을 해제하지 않습니다. James가 지적한 것처럼, 사용자가 지정한 최소값 이상을 예약 한 경우 이론상 필요하지 않고 시스템에 메모리 압력이있을 때이를 해제해야합니다.
Nick Chammas

@Nick : 최소 서버 메모리 : 0 (MB); 최대 서버 메모리 : 600 (MB)
jrara

답변:


13

서비스를 중지 / 시작하십시오. 다른 방법으로는 메모리를 다시 OS로 해제하지 않습니다.

분명히 운영 서버로하고 싶지는 않지만 로컬 샌드 박스에 완벽하게 합리적입니다. 내 랩톱에 3 가지 다른 인스턴스가있어 유일한 방법입니다.

@Nick의 의견에 따라 편집하십시오.

James가 지적한 것처럼, 사용자가 지정한 최소값 이상을 예약 한 경우 이론상 필요하지 않고 시스템에 메모리 압력이있을 때이를 해제해야합니다.

"필요하지 않음"에 대한 정의는 무엇입니까? 버퍼 풀이 채워지면 다른 페이지가 반입되어 선호하지 않을 때까지 페이지가 삭제되지 않습니다. @jrara의 경우와 같이 메모리를 즉시 다시 원한다면 중지해야합니다. /스타트.


2
Microsoft 당 : "Windows Server 2003에서 SQL Server는 메모리 알림 API QueryMemoryResourceNotification를 사용하여 버퍼 풀이 메모리를 할당하고 메모리를 해제 할 수있는시기를 결정합니다." 따라서 메모리가 더 필요할 수있는 다른 앱이 고갈되는 것을 걱정하는 경우 이론적으로 SQL Server는 Windows가 지시 할 때 필요하지 않은 메모리를 해제합니다. 인스턴스를 다시 시작하여 릴리스를 강제 실행해야하는 유일한 이유는이 메커니즘이 설계된대로 작동하지 않거나 최소 / 최대 메모리 설정이 올바르지 않은 경우입니다.
Nick Chammas

msdn.microsoft.com/en-us/library/ms178145.aspx 에서 명확하게 설명하는 또 다른 유용한 msdn 기사 입니다. SQL Server가 최소 서버 메모리 설정에 도달하면 OS의 메모리 부족 알림에 대한 응답으로 메모리를 해제합니다. 내 경험상 이것이 일어나기 위해서는 꽤 극단적이어야합니다.
georgeb

정확하게 @georgeb_dba, 그것은 쉽게 포기하지 않을 것입니다. Ergo, 중지 / 시작 및 랩톱의 제한된 메모리를 즉시 되돌립니다.
Mark Storey-Smith

4
DBCC FREESYSTEMCACHE ('ALL') 
DBCC FREESESSIONCACHE
DBCC FREEPROCCACHE 

수영장을 비울 것입니다.

https://msdn.microsoft.com/en-us/library/ms178529.aspx

비고

DBCC FREESYSTEMCACHE를 실행하면 SQL Server 인스턴스의 계획 캐시가 지워집니다. 계획 캐시를 지우면 모든 후속 실행 계획이 다시 컴파일되고 쿼리 성능이 일시적으로 일시적으로 저하 될 수 있습니다. 계획 캐시에서 지워진 각각의 cachstore에 대해 SQL Server 오류 로그에는 다음과 같은 정보 메시지가 포함됩니다. "SQL Server에서 '% s'캐시 저장소 (계획 캐시의 일부)에 대해 캐시 저장소 플러시가 % d 회 발생했습니다. 'DBCC FREEPROCCACHE'또는 'DBCC FREESYSTEMCACHE'조작. " 이 메시지는 해당 시간 간격 내에 캐시가 비워지는 한 5 분마다 기록됩니다.


1
꽤나 이것이 SQL이 OS 수준에서 예약 한 메모리의 양을 실제로 줄이지는 않을 것입니다
Greg

3

다른 앱이 커밋하려고 할 때 자동으로 사용하지 않는 메모리를 포기합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.