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

반응형