SQL Server/SQL Server Tip

Min / Max Server Memory 설정

SungWookKang 2015. 7. 17. 09:39
반응형

Min / Max Server Memory 설정

 

SQL Server서버는 메모리가 필요할 때 물리적인 메모리를 할당하여 쓰다가 윈도우 또는 다른 어플리케이션에서 메모리를 필요로 할 경우 자신이 사용하지 않는 메모리를 반환하는 구조이다. (SQL Server 2005 이상) 하지만 SQL Server가 메모리를 사용하고 있을 때 윈도우나 기타 어플리케이션에 의해 메모리를 뺏기는 현상이 발생 할 수도 있다.

이를 방지 하기 위하여 [Min / Max 메모리] 설정과 [락 페이지 인 메모리] 설정을 해야 한다.

 

이번에는 Min / Max 메모리 설정에 관해서 알아 보도록 한다.

 

SSMS를 활용한 Min / Max Memory 설정.

SSMS의 개체 탐색기에서 데이터베이스를 선택. 마우스 오른쪽을 클릭하여 [속성]을 선택 한다.

 

서버 속성 창이 나타나면 [메모리] 탭에서 다음과 같이 [최소 서버 메모리(MB)]와 [최대 서버 메모리(MB)]를 설정 한다. 그리고 확인을 선택하면 적용 된다.

이때 현재 사용중인 메모리보다 최대 서버 메모리를 작게 하였을 경우 메모리가 즉시 반환되는 것은 아니며 사용에 따라 서서히 반환된다.

 

 

쿼리를 이용한 Min /Max Memory 설정.

SP_Configure 명령어를 사용하여 Min / Max Memory 세팅이 가능하다.

전체 쿼리

EXEC SP_CONFIGURE 'SHOW ADVANCED OPTIONS', 1

RECONFIGURE WITH OVERRIDE

GO

 

EXEC SP_CONFIGURE

GO

 

EXEC SP_CONFIGURE 'MIN SERVER MEMORY (MB)', 2048

RECONFIGURE WITH OVERRIDE

GO

 

EXEC SP_CONFIGURE 'MAX SERVER MEMORY (MB)', 2048

RECONFIGURE WITH OVERRIDE

GO

 

EXEC SP_CONFIGURE 'SHOW ADVANCED OPTIONS', 0

RECONFIGURE WITH OVERRIDE

GO

 

EXEC SP_CONFIGURE

GO

 

SP_Configure의 'SHOW ADVANCED OPTIONS' 활성화 화여 메모리 정보를 확인 한다.

 

 

EXEC SP_CONFIGURE 'MIN SERVER MEMORY (MB)', 2048 지정 한다.(2GB 지정)

RECONFIGURE WITH OVERRIDE 명령어를 사용하여 시스템을 재시작 하지 않고 적용 한다.

(일부 옵션은 시스템을 재시작 하직 않고 오버라이드를 이용하여 즉시 적용할 있다.)

EXEC SP_CONFIGURE 'MAX SERVER MEMORY (MB)', 2048 지정 한다.(2GB 지정)

RECONFIGURE WITH OVERRIDE 명령어를 사용하여 시스템을 재시작 하지 않고 적용 한다.

(일부 옵션은 시스템을 재시작 하직 않고 오버라이드를 이용하여 즉시 적용할 있다.)

 

 

Min / Max 메모리의 양을 동일하게 설정한 이유는 외부 환경에 의해서 메모리의 가용성 변동을 없애기 위해서 이다.

Min / Max 메모리는 DB를 운영하는 서버라면 반드시 설정해 주어야 한다. Min / Max 메모리의 할당량은 사용하는 서버의 물리적 메모리 및 사용용도에 따라 다르다. DBA 관리자라면 자신이 관리하는 DB서버의 상태를 파악하여 반드시 설정 하도록 하자.

 

2012-09-03 / 강성욱 / http://sqlmvp.kr

반응형