조회 수 1513 추천 수 0 댓글 0

단축키

Prev이전 문서

Next다음 문서

단축키

Prev이전 문서

Next다음 문서

Extra Form

MySQL/MariaDB Memory 모니터링

 

  • Version : MySQL 5.7.21, Ubuntu 16.0.4

 

Memory 사용률은 모든 운영체제에서 중요한 모니터링 지표이다. 다양한 어플리케이션이 서버에서 실행되면서 실제 물리메모리를 초과하는 메모리 요구가 발생할 수 있기 때문에 메모리 모니터링도 중요하다. 실제 데이터베이스의 경우 메모리가 부족하여 성능저하가 크게 발생하는 경우가 많다.

 

아래 명령어는 Unbuntu Linux에서 5초 간격으로 메모리 사용량을 확인하는 명령이다.

watch -n 5 free –m

 

 

리눅스는 메모리의 효율적인 운영을 위해 전체 메모리에서 미리 Buffers + Cached 값을 자동으로 할당해 놓는다. 만일 어플리케이션에서 메모리가 필요할 경우 Cached에 할당된 메모리를 자동으로 반환해 어플리케이션에 할당한다.

 

MySQL 서버는 다양한 종류의 메모리 버퍼(메모리 캐시)를 사용한다. 사용영역에 따라 크게 전역과 지역으로 나눌 수 있다.

전역 메모리 (모든 커넥션 또는 스레드에서 공유)

지역메모리 (세션별로 할당, 공유하지 않음)

  • InnoDB Buffer pool
  • MyISAM key cache
  • Join buffer
  • Sort buffer
  • Read buffer

 

전체 메모리 사용량을 예상하여 할당하려면 아래와 같은 공식을 사용한다.

전역 메모리 사용량 합 + (지역적 메모리 사용량 합 X 최대 동시 커넥션 수)

 

만약 물리 메모리 대비 InnoDB 버퍼풀 크기 비율을 과도하게 높게 하였을때 활성 커넥션(Active DB Connections) 증가로 세션 단위의 메모리 사용량이 증가한다면 MySQL 서버가 사용하는 전체 메모리는 물리메모리를 초과할 수 있으며 서버의 성능저하로 이어질 수 있다. 따라서 아래와 같은 가이드를 제공하여 성능 저하를 예방할 수 있다.

  • 운영체제가 사용하는 적정 메모리 용량을 제외한 Buffer pool 할당
  • MySQL 서버에서 제공하는 Max Connection 수 제한
  • Max Connection 수 만큼 세션이 증가할 수 있으므로 세션별로 사용해야 하는 메모리 사용량 제한
  • 물리 메모리를 초과하지 않는 범위에서 MySQL 서버가 전역적으로 사용해야하는 메모리 영역에 대한 최대 사용랑 제한

 

메모리 관련 설정을 할 때 메모리 사용량에 영향을 줄 수 있는 변수는 약간의 유휴 메모리를 유지될 수 있게 설정하는 것을 권장한다.

 

Swap 메모리가 빈번한 경우 서버에서 실행되는 어플리케이션이 메모리를 적절하게 사용하지 못하거나 물리 메모리가 부족하다는 것을 의미하기 때문에 Swap 지수가 0보다 큰 경우 어느 어플리케이션이 메모리를 많이 사용하는지 확인이 필요하다.

 

 

[참고자료]

 

 

2018-03-27 / 강성욱 / http://sqlmvp.kr / http://sqlangeles.com

 

MySQL, MariaDB, linux, Memory 모니터링, watch, InnoDB Buffer pool, MySQL 메모리 사용량, 전역 메모리, 지역 메모리, 세션 메모리, Max connection


0 0 2 0 1 1 1 2 2 6 1 1 0 0 1 0 0 0 0 1
List of Articles
번호 분류 제목 글쓴이 조회 수 날짜
공지 뉴스 구글 최신 뉴스 file 덕후냥이 1456 2024.12.12
공지 일반 샤오미 BE6500 라우터 실사용 후기 (Wi-Fi 7 + 2.5G 스위치 기능까지 ㄷㄷ) 4 덕후냥이 1021 2025.06.28
공지 🚨(뉴비필독) 전체공지 & 포인트안내 21 무명의덕질 28985 2024.11.04
공지 URL만 붙여넣으면 끝! 임베드 기능 무명의덕질 23077 2025.01.21
10641 네이버 지식쇼핑을 보면 깜놀랄일 감자칩 3952 2014.03.23
10640 mysql 6.0 다운로드 (windows 계열 32비트용) 감자칩 2786 2014.03.29
10639 리니지 프리서버 - 춘자 2.7클라이언트 2 가브리엘조 9506 2014.03.30
10638 안녕하세요 핫젝갓 1925 2014.04.07
10637 가입했습니당^.^ 1 컴퓨터갤 2189 2014.04.07
10636 가입인사드립니다. 1 체스카 2124 2014.04.07
10635 스위트망고입니다. 반갑습니다 1 스위트망고 2196 2014.04.07
10634 영자님 2 김치년 4002 2014.04.11
10633 카오스원 2 김치년 3277 2014.04.11
10632 컴퓨터 포멧하려는데 BIOS 화면이 안떠요. 6 강백호 5186 2014.04.12
10631 하이하이 1 강백호 4142 2014.04.12
10630 영자씨 1 강백호 2622 2014.04.13
10629 인텔 v프로 원격제어 지원 메인보드-애즈락 Q87M 프로 출시 감자칩 2850 2014.04.26
10628 하즈웰 4세대 오버클럭시 온도차이. 감자칩 2379 2014.04.26
10627 갠적으로 마음에 드는 그래픽카드 GTX760 PHANTOM DDR5 2G 1 감자칩 2843 2014.04.26
10626 탑파워 TOPOWER TOP-500D 80PLUS Bronze 감자칩 1943 2014.04.26
10625 슈퍼플라워 SF-500P12A 후기 감자칩 1711 2014.04.26
10624 인텔 코어 i7 하스웰 4770 추천드림 감자칩 2424 2014.04.26
10623 듀얼 모니터 작업표시줄 프로그램 감자칩 2976 2014.04.26
10622 일반하드랑 ssd랑 차이가 심한가요? 1 라이너스~ 3035 2014.04.26
Board Pagination Prev 1 2 3 4 5 ... 533 Next
/ 533