로그인

검색

Server
2013.08.25 01:18

mysql 튜닝 방법

조회 수 17570 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 게시글 수정 내역 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 게시글 수정 내역 댓글로 가기 인쇄


해당 튜닝 방법은 김정균님의 튜닝글을 가져온것이다.

린프리닷컴은 웹서버운영에 필요한 자료를 모으는 공간이다.


# MySQL 설정 File
# 작성 김정균
###########################################################################
#
# 이 파일에는 MySQL 의 전체적인 설정이 들어간다. [ client ] 설정은 각 유저
# 들의 홈디렉토리 ~user/.my.cnf 라는 파일로 만들어 설정을 할수 있다. 이 설
# 정 파일들의 퍼미션은 소유자 readonly 즉 600 을 유지해야 한다.
#
# 현설정 파일은 Plll 700 Mhz 에 RAM 512 M 를 기준으로 MySQL 전용 서버로 작
# 하는 경우를 기준으로 작성이 되어 있다. 각 시스템에 대한 설정은 아래의 파
# 일들을 참조 하도록 한다.
#
# PATH /usr/share/mysql
# my-huge.cnf MySQL 전용으로 메모리가 1-2G 일 경우
# my-large.cnf MySQL 전용으로 메모리가 512 이상일 경우
# my-medium.cnf MySQL 전용으로 메모리가 32-64M 정도일 경우나
# 메모리가 128 이상이면서 다른 데몬과 같이 서비스 될 경우
# my-small.cnf MySQL 전용으로 메모리가 64M 이하일 경우
#
# 메모리가 32M 보다 작을 경우에는 my.cnf 설정을 사용 하지 말고 디폴트 값을
# 사용하도록 한다.

###########################################################################
# MySQL Clinet 설정
###########################################################################
[client]
password = blahblah
port = 3306
socket = /var/lib/mysql/mysql.sock
default-character-set = euckr


###########################################################################
# MySQL Server 설정
###########################################################################
# 다음 사항을 잘 고려하여 설정을 해야 한다.
# key_buffer_size+(record_buffer+sort_buffer)*max_connections <실메모리양
#
# key_buffer 는 실 메모리의 1/4 정도면 무난하다.
#
# 또한 table_cache 는
# (MaxFileOpen-MaxConnection-(temporary table 에 사용되는 파일핸들) ) / 2
# 을 고려하여 설정을 한다.(단 너무 크게 잡을 필요는 없으며 최대 동시 접속
# 자 수의 1.5-2 배 정도라고 생각하면 된다. 즉 500 으로 지정이 되어 있으면
# DB 의 테 # 이블의 총수가 500개 까지는 모두 캐싱이 가능하다. 위의 공식은
# 최대값이라 생각을 하면 된다.)
#
[mysqld]
port = 3306
socket = /var/lib/mysql/mysql.sock
#skip-show-database
skip-locking
skip-name-resolve
#skip-networking
key_buffer = 512M
max_allowed_packet = 4M
table_cache = 512
sort_buffer_size = 2M
read_buffer_size = 2M
myisam_sort_buffer_size = 64M
thread_cache = 8
thread_stack = 126976
max_connections = 200
join_buffer_size = 1M

max_connect_errors = 1024
wait_timeout = 30
old_passwords = 0
#tmpdir = /dev/shm
#log_slow_queries = /var/log/mysql/slow.log

read_rnd_buffer_size = 8M
thread_cache_size = 8

# sql cache 사용
#
# query 캐쉬 사용 옵션
# 0 -> 사용안함
# 1 -> 사용함
# 2 -> 선택적 사용
# http://www.mysql.com/doc/en/Query_Cache_Configuration.html 참고
query_cache_type = 1
query_cache_size = 512M
query_cache_limit = 2M

# CPU 갯수 * 2 를 해서 설정을 한다. 1 개일 경우에는 설정 필요가 없다.
thread_concurrency = 4

# Charset 설정
#
# 기본 언어셋 설정은 /etc/sysconfig/mysql 의 default_char 을 함
character-set-client-handshake = 0
#character-set-server = euckr
#default-collation = euckr_korean_ci
#init_connect = 'set names euckr'

# 메시지 언어 선택
language = /usr/share/mysql/korean/

# MySQL 의 리플리케이션 기능을 사용하기 위한 binary log 설정
#log-bin
#server-id = 1

# InnoDB 테이블 설정
#
# innodb 를 사용하지 않을 경우에는 아래를 설정한다.
skip-innodb

# innodb 를 위한 경로 설정
#innodb_data_home_dir = /var/lib/mysql/
#innodb_data_file_path = ibdata1:2000M;ibdata2:10M:autoextend
#innodb_log_group_home_dir = /var/log/mysql/
#innodb_log_arch_dir = /var/log/mysql/

# _buffer_pool_size 를 RAM 의 50-08% 정로도 설정한다. 하지만 이 경우 메모리
# 사용량을 너무 많이 잡아 먹을 수도 있으므로 어느정도 시스템 모니터링을 하도
# 록 한다.
#innodb_buffer_pool_size = 384M
#innodb_additional_mem_pool_size = 20M

# _log_file_size 는 buffer pool size 의 25% 정도로 설정한다.
#innodb_log_file_size = 100M
#innodb_log_buffer_size = 8M
#innodb_lock_wait_timeout = 50

# 0 => commit 시 로그 파일에 바로 기록 안함
# 1 => commit 시 로그 파일에 바로 기록
# 2 => commit 시 OS 레벨의 파일 캐쉬에 기록 (3.23.52 추가)
#innodb_flush_log_at_trx_commit = 2


###########################################################################
# MySQL dump 설정
###########################################################################
[mysqldump]
quick
max_allowed_packet = 16M

###########################################################################
# MySQL
###########################################################################
[mysql]
no-auto-rehash

###########################################################################
# Isamchk
###########################################################################
[isamchk]
key_buffer = 256M
sort_buffer_size = 256M
read_buffer = 2M
write_buffer = 2M

###########################################################################
# Myisamchk
###########################################################################
[myisamchk]
key_buffer = 256M
sort_buffer_size = 256M
read_buffer = 2M
write_buffer = 2M

###########################################################################
# Mysqlhotcopy
###########################################################################
[mysqlhotcopy]
interactive-timeout

# Local variables:
# tab-width: 4
# c-basic-offset: 4
# End:
# vim600: noet sw=4 ts=4 fdm=marker
# vim<600: noet sw=4 ts=4



리눅스

유용한 정보 및 자료

List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
204 Server 테이블 형태 변경하기 MyISAM -> InnoDB(또는 InnoDB -> MyISAM) 보석 2011.10.21 25963
203 KimsQ 킴스큐 RBShop유플러스(UPLUS - 엘지데이콤) 결제후 주문서가 접수 되지 않는 오류 보석 2013.08.23 15266
202 XE 콘텐츠 위젯 제목에 코드 노출되는 문제 보석 2012.04.27 11552
201 Pydio 웹하드 솔루션 - AjaXplorer 4.0 한글패치 file 보석 2012.09.30 10128
200 기타 원하는 크기로 새창 띄우기 보석 2013.08.23 14294
199 XE 원하는 위치에 아이콘샵 아이콘 출력하기 보석 2012.09.05 22657
198 Server 우분투에서 압축하고 풀기( tar, gzip, tar.gz ) 보석 2011.08.31 15714
197 Server 우분투에 메일서버를 설치하자. file 보석 2011.12.10 10649
196 Server 우분투(리눅스) 상위폴더로 전체 데이터 옮기기 1 보석 2016.05.18 212
195 Server 우분투 프록시서버 만들기 file 보석 2014.02.03 9686
194 Server 우분투 폴더 소유권 설정 보석 2011.05.15 16403
193 Server 우분투 폴더 삭제 및 폴더 생성 보석 2011.05.15 21160
192 Server 우분투 트림활성화 및 수동 트림하기 보석 2012.11.04 19855
191 Server 우분투 크론 (예약작업) 설정 자동 백업 4 보석 2011.09.01 15846
190 Server 우분투 원격데스크톱 설정 보석 2012.03.30 12098
189 Server 우분투 오래된 커널 삭제 방법 보석 2016.01.14 310
188 Server 우분투 업데이트 서버 변경 보석 2012.11.11 12051
187 Server 우분투 업데이트 서버 변경 보석 2016.06.21 78
186 Server 우분투 센드메일 설치 및 설정 sendmail 2 보석 2011.05.16 22216
185 Server 우분투 서버(커맨드 모드)에서 외부 아이피 알아내기 보석 2012.04.05 14163
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 11 Next
/ 11