• 흐림동두천 10.6℃
  • 구름많음강릉 15.0℃
  • 박무서울 10.9℃
  • 흐림대전 10.7℃
  • 맑음대구 19.3℃
  • 맑음울산 21.4℃
  • 흐림광주 11.3℃
  • 맑음부산 20.3℃
  • 흐림고창 9.9℃
  • 흐림제주 14.6℃
  • 구름많음강화 11.6℃
  • 흐림보은 10.1℃
  • 흐림금산 10.9℃
  • 흐림강진군 12.9℃
  • 맑음경주시 19.6℃
  • 맑음거제 18.8℃
기상청 제공

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;