• 맑음동두천 20.1℃
  • 맑음강릉 18.8℃
  • 맑음서울 20.1℃
  • 맑음대전 20.3℃
  • 맑음대구 20.4℃
  • 맑음울산 16.8℃
  • 맑음광주 19.6℃
  • 맑음부산 15.1℃
  • 맑음고창 18.9℃
  • 구름많음제주 16.8℃
  • 맑음강화 17.3℃
  • 맑음보은 19.0℃
  • 맑음금산 19.6℃
  • 맑음강진군 19.8℃
  • 맑음경주시 21.4℃
  • 맑음거제 17.5℃
기상청 제공

SQL처리 시 Temporary Table 현황 모니터링

# SQL처리 시 Temporary Table이 디스크에 사용되지 않도록 해야한다.
# Temporary Table 현황 모니터링
# Created_tmp_files 이 많다면 tmp_table_size를 늘려주기
mysqladmin -uroot -p extended-status -r -i 1 | grep -E 'Created_tmp|--'

일부 쿼리는 Temporary Table을 메모리에 사용하지 않고 디스크를 바로 사용하는 경우가 있다.
쿼리 자체를 수정하여 디스크를 사용하지 않도록 해야겠다.

임시 꼼수로.
통계성 쿼리 질의 전에 세션 변수 설정(2G로 할당)을 한 후 해본다.
디스크 사용을 줄이기 위한 목적이지만 쿼리 자체를 수정하는게 더 좋은 방법임.
set session tmp_table_size = 2 * 1024 * 1024 * 1024;
set session max_heap_table_size = 2 * 1024 * 1024 * 1024;