본문 바로가기

컴퓨터/노트북/인터넷

IT 컴퓨터 기기를 좋아하는 사람들의 모임방

조회 수 1049 추천 수 0 댓글 1

단축키

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


컴퓨터/노트북/인터넷

IT 컴퓨터 기기를 좋아하는 사람들의 모임방

List of Articles
번호 분류 제목 조회 수 날짜
공지 뉴스 구글 최신 뉴스 file 1386 2024.12.12
HOT글 일반 아 진짜 요새 SKT 해킹 뭐시기 때문에 신경 쓰여 죽겠어 ㅠㅠ 2 237 2025.05.20
공지 사랑LOVE 포인트 만렙! 도전 4681 2025.03.19
공지 🚨(뉴비필독) 전체공지 & 포인트안내 3 25853 2024.11.04
공지 URL만 붙여넣으면 끝! 임베드 기능 20432 2025.01.21
10640 PHP에 다중 코어를 사용하는 방법 1 1409 2023.03.30
10639 CPU 코어 수보다 더 많은 PHP-FPM 자식을 실행하는 것이 맞습니까? 2 1441 2023.03.30
10638 유튜브 8k를 틀면 왜 버벅대는 건가요? 1 1349 2023.04.03
10637 혹시 중고 그래픽카드 as는 어떻게 얘기하구 받아야하나요?? 2 1949 2023.04.03
10636 다운로드 속도가 옳게 나오고 있는건가요? 1 1937 2023.04.03
10635 LG그램 노트북이 느려요. nvme ssd 캐시값에도 영향이 있나요? 1 3148 2023.05.01
10634 3440X1440 해상도 그래픽카드 추천부탁드립니다 2 3244 2023.05.01
10633 Nvme 아무데나 꽂아도 됨? 1 file 362 2023.05.05
10632 설계용 노트북 추천 1 372 2023.05.05
10631 휴대폰 기종 뭔지 아시는 선생님 계실까요 1 file 389 2023.05.05
10630 아ㅋㅋ 하드디스크 이거 망한 거지? file 388 2023.05.05
10629 HDD 8TB 할인 존버성공!! 2 375 2023.05.05
10628 알뜰로 가게 좀 도와조... 2 354 2023.05.05
10627 빅스떄노릴만한노트북추천해주세용 1 392 2023.05.05
10626 RX6600에서 3060Ti으로 1 352 2023.05.05
10625 5800x3d는 더이상 가격 안내려가겠지? 1 408 2023.05.05
10624 키보드 25만원이하로 사려는데 다 비슷하나요? 382 2023.05.05
10623 제 씨퓨 내장그래픽 안되는 제품인가요? 1 file 349 2023.05.05
10622 혹시 컴퓨터 의자 관심있으시거나 잘 아시는분 계실까요? 2 360 2023.05.05
10621 l3 캐쉬 메모리가 차이 나면 어떤게 체감이 오는건가요? 2 file 648 2023.05.22
10620 L3 캐쉬 유무 성능차이 1 863 2023.05.22
10619 기가바이트 Z790 어로스 익스트림 X, 디스플레이 내장 file 479 2023.06.02
10618 TSMC N3, SRAM 확장이 많이 어려워짐 file 461 2023.06.02
10617 젠슨황: 인텔 파운드리로 테스트 칩 생산함. 잘 작동 346 2023.06.02
10616 AMD, 라이젠 AI의 추론 처리를 시연 772 2023.06.02
10615 SK하이닉스 10나노급 5세대 DDR5, 세계 최초로 데이터센터 호환성 검증 돌입 716 2023.06.02
10614 중국 무어 스레드, 3584 코어와 7GB GDDR6 메모리의 MTT S70 GPU file 599 2023.06.02
10613 인텔 메테오레이크로 추측되는 CPU가 탑재된 MSI 노트북 file 437 2023.06.02
10612 ASUS, 360mm 일체형 수냉 쿨러와 리퀴드 메탈을 쓴 ROG 매트릭스 지포스 RTX 4090 file 814 2023.06.02
10611 엘더레이크 vs 랩터레이크 vs 사파이어래피즈 간의 다이 샷 비교 file 666 2023.06.02
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 355 Next
/ 355