컴퓨터 / 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
장마철 캐주얼 디자인 방수 데일리 스니커즈
웬져 안티 블루라이트 반뿔테 안경 SD-260163
강아지 고양이 김장 할머니 할매 조끼 꽃무늬 애견
소가죽 남자 샌들 정장샌들 남성 스트랩 여름 신발
캐리어 에어컨 냉난방기 통합 리모컨 사무실 에어콘
렛츠파티 USB 리모컨 사운드인식 미러볼 조명 노래방
핸드폰 도난방지 손목 스트랩 5color LM-0798
실리스킨 삼성 갤럭시북4 프로 NT940XGK NT940XGQ 14인치 전용 키스킨
유진 6000 SB 골드 목문 방문손잡이 욕실용
미니상자 서랍용(B5) 노랑(290x220x58mm)
대건통상틈새 지그재그 Z신발장 9단
안젤로 냉장고 자석 틈새 선반 소스 부착형 주방 철제
세이프티락 기타 스트랩 블록 고무 안전 잠금 와셔
손가락보호대 발가락 잘라쓰는 보호대 밴드 소 M10915
농심 신라면 봉지 (5개입)
실리콘 젤 쿠션 기능성 발 편한 아치형 신발 깔창

매상부(장부속지4공 B5)
바이플러스
마술도구 공중부양 에어스피너 카드
칠성상회

맨위로↑