MySQL의 InnoDB 작업 관련된 특성으로 메모리 사용률이 높게 유지 될 수 있습니다.

MySQL에서는 InnoDB 작업으로 전체 버퍼 풀에 대한 메모리를 할당합니다.


이때 버퍼 풀이란, InnoDB가 엑세스를 시도할 때, 테이블 및 인덱스 데이터를 캐시하는 메인 메모리 영역을 뜻합니다.

즉 CloudSQL에 저장된 데이터 용량이 늘었기 때문에 innodb_buffer_pool_size 값이 늘어나게 됩니다.


Cloud SQL에서 nnodb_buffer_pool_size 플래그의 기본값, 최소 허용 값, 최대 허용 값은 인스턴스의 메모리에 따라 다르게 적용됩니다.

또한 기본적으로 이 Flag 값은 최대 허용 값에 가깝게 설정됩니다.

아래는 innodb_buffer_pool_size 대략적인 값입니다.

정확한 현재 값을 계산하기 위해서는 아래 쿼리를 실행하여 확인 할 수 있습니다.


show global variables like 'innodb_buffer_pool_size'



따라서 메모리 사용률을 낮추기 위해서는 innodb_buffer_pool_size Flag 값을 조정하여 최소 허용 값인 메모리의 20%로 조정 할 수 있습니다.


※ MySQL 5.6 버전에서는 이 플래그를 변경하려면 인스턴스를 다시 시작해야 합니다.