제작자 : Matthew Montgomery
홈페이지 : http://www.day32.com/MySQL/


1. 소개 :

MySQL서버의 설정 % (/etc/my.cnf 또는 /etc/mysql/my.cnf)에 따라 스크립트 실행시 입력한
유저의 권한으로 DB에 접속해 설정 내용과 DB현황을 분석해 MySQL서버의 상태와 권장설정을
출력해준다.

지원 가능한 DB : MySQL 3.23이상 지원 (MySQL 5.1포함)


* MySQL서버가 최소한 48시간이상 실행된뒤 스크립트를 실행해 튜닝여부를 결정하기를 권장하고 있다.

튜닝여부를 확인할수 있는 목록은 아래를 참고하기 바란다.

Currently it handles recomendations:

# Slow Query Log
# Max Connections
# Worker Threads
# Key Buffer
# Query Cache
# Sort Buffer
# Joins
# Temp Tables
# Table (Open & Definition) Cache
# Table Locking
# Table Scans (read_buffer)
# Innodb Status

2. 다운로드 :
http://www.day32.com/MySQL/tuning-primer.sh
또는 이글의 첨부파일로 받을수 있다.

tuning-primer.sh


3. 사용방법 :
1st argument is execution mode Usage: ./tuning-primer.sh [ mode ]

Available Modes:

all : perform all checks

prompt : prompt for login credintials and socket and execution mode

mem, memory : run checks for tunable options which effect memory usage

disk, file : run checks for options which effect i/o performance or file handle limits

innodb : run InnoDB checks /* to be improved */

misc : run checks for that don't categorise well Slow Queries, Used Connections,

Worker Threads

기본적으로 별도의 옵션 없이 실행하면 기존에 ~/.my.cnf파일에 DB접속 유저명과 패스워드를 입력해 뒀다면 자동으로

MySQL서버에 접속하는 유저명과 패스워드를 그것으로 입력으로 받고 그렇지 않다면 접속 유저명과 패스워드를 묻는다.

MySQL서버의 업타임을 최소 48시간 이상으로 하고 있지만 약간 더 오래 실행한뒤 스크립트를 실행해보면 좀더 정확한

튜닝여부를 확인해 볼수 있을것이다. 실행 출력 예제는 아래 그림을 참고하기 바란다.




스크립트 실행 결과에 따라 권장 내용으로 my.cnf파일의 설정을 조정하면 좀더 최적화된 DB서버 운영이 가능할것으로 보인다.

% ~/.my.cnf 예제

[client] user=root password=password




+ Recent posts