
--max_heap_table_size 옵션은 MySQL 서버에서 MEMORY 엔진이 사용하는 최대 힙 테이블 크기를 설정합니다. 이 옵션은 MEMORY 엔진의 테이블 크기에만 영향을 미치며, InnoDB 엔진의 경우에는 영향을 미치지 않습니다.
위의 예제에서 max_heap_table_size 옵션은 64M로 설정되어 있습니다. 이 옵션을 설정한 후, MEMORY 엔진의 테이블을 생성하고 INSERT 문을 실행하면, MySQL 서버의 메모리 사용량은 64M 이상으로 증가하지 않습니다. 그러나 InnoDB 엔진의 경우에는 영향을 미치지 않습니다.
InnoDB 엔진의 메모리 관리는 InnoDB Buffer Pool에 의해 관리됩니다. InnoDB Buffer Pool은 MySQL 서버의 메모리에서 데이터를 캐시하는 영역입니다. InnoDB Buffer Pool의 크기는 innodb_buffer_pool_size 옵션으로 설정할 수 있습니다.
위의 예제에서 SHOW GLOBAL STATUS LIKE 'Innodb_buffer_pool_bytes_data'; 문을 실행하면, InnoDB Buffer Pool의 현재 크기를 확인할 수 있습니다. 그러나 이 옵션은 메모리 사용량을 제한하는 옵션은 아닙니다.
따라서, --max_heap_table_size 옵션은 MEMORY 엔진의 테이블 크기에만 영향을 미치며, InnoDB 엔진의 경우에는 영향을 미치지 않습니다. InnoDB 엔진의 메모리 관리는 InnoDB Buffer Pool에 의해 관리됩니다.
2025-06-24 02:39