서버 최적화를 위한 mysql 설정 방법 Print
  • mysql, 최적화
  • 0

안녕하세요? MEGA IDC 서버운영팀입니다.

모든 테이블을 InnoDB로 사용하신다는 가정 하에... (만약 MyISAM을 사용하신다면 그것부터 해결하세요.)

key_buffer = 이건 MyISAM에서는 그야말로 핵심 설정이지만, InnoDB에서는 건드릴 필요 없습니다.

max_allowed_packet = 16M 정도로 늘려주세요. 이게 너무 작으면 대량의 데이터를 한꺼번에 인서트하는 서드파티 자료가 에러를 뿜기도 합니다.

innodb_buffer_pool_size = 이게 제일 중요합니다. DB 전체 용량과 같거나 조금 더 많으면 좋습니다. 단, 서버 전체의 RAM 사용량을 고려해야 하므로 무작정 키울 수는 없고, RAM 16G짜리 PC에 다른 프로그램과 함께 돌린다면 1~2G 정도는 괜찮을 것 같네요. 대용량 DB를 굴리는 사이트에서는 이 설정이 수십~수백기가씩 되기도 하죠.

innodb_log_file_size = 이것도 최소 256M 정도는 되어야 합니다. 단, 이 설정을 바꾼 후에는 1) 우선 DB를 안전하게 종료한 후 2) C:/wamp/mysql/data 폴더에서 ib_logfile로 시작하는 로그파일 2~3개를 찾아 삭제하고 3) DB를 재시작해야 합니다. 이 과정을 거치지 않으면 에러가 나요.

innodb_log_buffer_size = 위에서 설정한 innodb_log_file_size 값의 1/4~1/2 정도 되도록 합니다.

올려주신 파일에는 없는 것 같지만, max_heap_table_size = 64M, tmp_table_size = 64M 정도로 설정해 주면 복잡한 조인과 정렬이 들어가는 위젯들도 숨통이 좀 트입니다.


이 답변이 도움이 되었습니까?
« Back