본문 바로가기

InnoDB2

[MySQL] InnoDB의 Buffer pool과 Redo log (2) 버퍼풀 설정과 Flush 와 백업 저번시간에는 버퍼풀의 구조, 리두로그 동작 방식에 대해 알아보았고 이번에는 플러시 기능과 관련 버퍼풀 관련 설정값에 대해 정리했다.버퍼풀 크기 설정MySQL을 설치하는 서버의 메모리가 8GB 미만이라면 운영체제의 전체 메모리의 50프로만 버퍼풀로 설정하고, 나머지는 MySQL서버와 운영체제가 사용할 공간으로 두는걸 책에서는 권장한다.서버의 메모리가 8GB 이상이라면 50프로부터 조금씩 올려가면서 최적점을 찾는 것을 권장한다고 한다.innodb_buffer_pool_instances 변수를 이용하여 버퍼풀을 여러개로 분리해서 관리할 수 있는데, 버퍼풀의 사이즈가 1GB미만이라면 인스턴스 수는 1개만 생성되고, 1GB 이상이면 8개로 초기화된다.버퍼풀 사이즈가 40GB를 넘는다면 인스턴스 당 5GB 정도가 .. 2026. 3. 16.
[MySQL] InnoDB의 Buffer pool과 Redo log (1) 기본 개념편 InnoDB 버퍼풀이란 디스크에서 읽은 데이터 파일이나 인덱스 정보를 메모리에 캐시해두는 공간이다.적절한 사이즈를 설정하면 캐시 히트율이 높아지고 디스크 I/O가 적어질 확률이 높아지기 때문에 읽기와 쓰기 성능이 좋아진다.aws의 rds를 사용하는 경우 버퍼풀 사이즈(innodb_buffer_pool_size) 가 서버 사양에 맞게 적절히 설정되지만 ec2 인스턴스에 직접 설치해서 사용하는 경우 별도 설정을 하지 않으면 128MB로 할당된다.SHOW VARIABLES LIKE 'innodb_buffer_pool_size';// innodb_buffer_pool_size 134217728 (128MB) 서버 사양에 비해 적절한 사이즈를 설정해주지 않으면 데이터베이스의 버퍼풀에 따른 성능에 대한 이점을 온전.. 2026. 3. 14.