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
'SQL Server > SQL Server Tip' 카테고리의 다른 글
SSMS에서 변경 스크립트 자동 생성 (0) | 2015.07.17 |
---|---|
SSMS 명령 단축키 설정 (0) | 2015.07.17 |
Tempdb 에러 (0) | 2015.07.17 |
SQL Server ErrorLog에 백업 로그 남지기 않기 (0) | 2015.07.17 |
SQL Server의 Errorlog는 어디에 저장 될까? (0) | 2015.07.17 |