컴퓨터 / Computer

MariaDB 메모리 누수 잡기 ( Memory Leak Issue ) - jemalloc



MariaDB 10.4 버전대에서 메모리 관련하여 문제가 있다 한다. 쿼리가 많으면 메모리를 엄청 잡아 먹는데 그 후로 갱신이 되지 않는다. 원인을 찾아 보니 malloc 함수 문제라는 이야기가 있어 그걸 아래 절차대로 교체를 해 보았다.




1. 보유 중인 malloc 확인


   mysql> SHOW VARIABLES LIKE 'version_malloc_library';


MariaDB [(none)]> SHOW VARIABLES LIKE 'version_malloc_library';

+------------------------+--------+

| Variable_name          | Value  |

+------------------------+--------+

| version_malloc_library | system |

+------------------------+--------+

1 row in set (0.001 sec)


version_mallloc_library 를 확인해 보면 system 이라고 나온다. 



2. 여러 제안이 있었지만 jemalloc을 쓰기로 했다. 아래 명령어로 설치를 한다.


  yum install jemalloc





3. library 를 설치했으면 설정 파일에 넣는다. 


  파일 수정 /etc/systemd/system/mariadb.service.d/*.conf  ( mariadb.service.d/에 conf 파일이 하나 있다.)


 아래 항목을 추가한다.


 Environment="LD_PRELOAD=/usr/lib64 /libjemalloc.so.1"


시스템마다 저 libjemalloc.so.1 위치가 다르니 위치 확인을 반드시 한 후 정확한 폴더 명을 적어줘야 한다. 




4. 시스템 적용


아래와 같이 입력한다. 


  systemctl stop mariadb.service && systemctl daemon-reload && systemctl start mariadb.service


경우에 따라서는 daemon이 안 뜨는 경우도 있는데, 그런 때는 systemctl status mariadb.service 명령어를 입력하여 오류 코드를 확인해야 한다.



5. 확인 : 아래와 같이 결과가 나오면 성공이다.



# pmap `pidof mysqld` | grep jemalloc

00007f7f114a8000    196K r-x-- libjemalloc.so.1

00007f7f114d9000   2044K ----- libjemalloc.so.1

00007f7f116d8000      8K r---- libjemalloc.so.1

00007f7f116da000      4K rw--- libjemalloc.so.1








참고 

 - https://asrarabukhair.com/2020/07/15/mariadb-10-4-x-memory-footprint-issue/

 - https://blog.daum.net/keydream/14636167





Comments

공유지기 2022.03.28 01:43
더불어서  MariaDB의 server.conf 를 아래와 같이 수정했다.


innodb_buffer_pool_size = 12G
innodb_buffer_pool_instances = 8
innodb_flush_log_at_trx_commit = 0
innodb_log_files_in_group = 3
innodb_thread_concurrency = 12
innodb_write_io_threads = 8
innodb_read_io_threads = 8
innodb_io_capacity = 200
key_buffer_size = 32M
Sha_bler 2025.07.03 16:06
참고할 만한 링크

https://dev-ljy.tistory.com/4
(특가) 콧볼 축소 집게 콧대 높이기 콧구멍 줄이기
엔비몬 여성 슬림핏 티셔츠 여자 여름 반팔 라운드넥 캐주얼 반팔티
옆트임 롱 데님 스커트 연청 워싱 앞절개 청치마
여성 페이즐리 올림머리 헤어핀 반묶음 스카프 집게핀
미니 2단 삼각대 카메라 스마트폰 거치대
USB AM-CM 고속충전 케이블 0.5m
자전거 스마트폰 홀더 자전거휴대폰거치대 스마트폰거치대
샤오미호환 미에어2 그레이 헤파필터 공기청정기필터
무타공 면도기 스텐 거치대 걸이
철제 더블 옷장 무타공 튼튼한 스탠드 옷걸이 행거
화장품 수납정리대 파우더룸 메이크업 브러쉬
철제 스탠드 옷걸이 행거 2단 높은 DIY 인테리어 헹거
몽베스트 생수 무라벨 랜덤발송 500ml 40개
검은 고양이 9구 키캡 클리커 랜덤 딸깍이 키보드 장난감 피젯토이 키링
3M 공업용수세미 마이티블루 1박스 100개
H형 우레탄 방수 앞치마 무광 중형 파랑

삼화 철재 POP 스탠드 A3용 L자형 MDCB-22BK
바이플러스
니스포 단체줄넘기 긴줄넘기 10M 블루
바이플러스

맨위로↑