본문 바로가기
개발이야기/MSSQL

[MSSQL] 서버 최대 메모리 설정

by S코델리아2 2024. 7. 10.
728x90
반응형

MSSQL을 사용하는 서버를 운영하다 보면

메모리가 계속 증가하는 것을 볼 수 있다.

계속 방치해두면 메모리 과부하로 접속 장애나

운영 중인 서비스에 성능 저하, 서버 시스템 성능 저하 문제가 발생할 수 있다.

이는 MSSQL은 메모리를 한번 점유하면

OS가 요청하지 않는 이상 메모리를 반환하지 않는다.

그렇기 때문에 단순히 메모리를 증설하더라도

얼마 지나지 않아 또다시 메모리 과부하가 생길 수 있다.

그렇기 때문에 SQL 서버가 사용할 수 있는

최대 메모리를 설정하여 제한하는 것이 필요하다.

보통 전체 메모리의 70% 정도로

최대 메모리를 설정해 주는 것이 좋다.

메모리 권장 수치

 

위의 표는 권장 수치이고

서버 OS 환경에 따라 조금 더 낮게 설정해 주면 된다.

 

​SSMS를 통한 설정

 

SSMS를 실행하여 관리 대상 DB 연결 및 접속을 한다.

 

 

1. 개체 탐색기에서 대상 서버를 우클릭 -> 속성을 클릭한다.

 

 

2. 메모리 탭을 클릭한다.

최대 서버 메모리가 2147483647라고 설정되어 있으면

무제한으로 증가한다.

위의 메모리 권장 수치를 참조하여

최대 서버 메모리 값을 변경해 준다.

확인 버튼을 누르면

재가동이나 재부팅을 안 해도 적용이 된다!!

 

스크립트를 통한 설정
--고급 옵션이라 SHOW ADVANCED OPTIONS이 1로 설정된 경우만 변경 가능
EXEC sp_configure 'SHOW ADVANCED OPTIONS', 1

--즉시 적용
RECONFIGURE WITH OVERRIDE
GO

-- 최소 메모리 2GB로 설정
EXEC sp_configure 'min server memory (MB)', 2048
RECONFIGURE WITH OVERRIDE
GO

-- 최대 메모리 8GB로 설정
EXEC sp_configure 'max server memory (MB)', 8192
RECONFIGURE WITH OVERRIDE
GO

--다시 0으로 설정
EXEC sp_configure 'SHOW ADVANCED OPTIONS', 0

--즉시 적용
RECONFIGURE WITH OVERRIDE
GO

 

최대 메모리를 설정하여

서버 메모리 관리를 해주자!!

728x90
반응형