RadarURL

MySQL my.cnf 파일 수정으로 mysql 서버 튜닝하기

by JAESOO posted Jul 07, 2014
?

단축키

Prev이전 문서

Next다음 문서

ESC닫기

크게 작게 위로 아래로 댓글로 가기 인쇄
mysql 서버 설치 후 my.cnf 파일 수정에 대해 몇자 적는다.
필자도 그랬지만 mysql 설치 후
# cp support-files/my-medium.cnf /etc/my.cnf <==이렇게 달랑 한다음 손을 놓은 적이 많다.
my.cnf는 mysql의 옵션 파일이라고 보면된다.
이제 설정사항을 몇가지 살펴 봅시다.

____________________________________________________________
# The following options will be passed to all MySQL clients
[client]
#password = your_password
port = 3306
socket = /tmp/mysql.sock

# Here follows entries for some specific programs

# The MySQL server
[mysqld]
port = 3306
socket = /tmp/mysql.sock
skip-locking
set-variable = key_buffer=16M
set-variable = max_allowed_packet=1M
set-variable = table_cache=64
set-variable = sort_buffer=512K
set-variable = net_buffer_length=8K
set-variable = myisam_sort_buffer_size=8M
log-bin
server-id = 1

# Point the following paths to different dedicated disks
#tmpdir = /tmp/
#log-update = /path-to-dedicated-directory/hostname

# Uncomment the following if you are using BDB tables
#set-variable = bdb_cache_size=4M
#set-variable = bdb_max_lock=10000

# Uncomment the following if you are using InnoDB tables
#innodb_data_home_dir = /home/mysql/
#innodb_data_file_path = ibdata1:10M:autoextend
#innodb_log_group_home_dir = /home/mysql/
#innodb_log_arch_dir = /home/mysql/
# You can set .._buffer_pool_size up to 50 - 80 %
# of RAM but beware of setting memory usage too high
#set-variable = innodb_buffer_pool_size=16M
#set-variable = innodb_additional_mem_pool_size=2M
# Set .._log_file_size to 25 % of buffer pool size
#set-variable = innodb_log_file_size=5M
#set-variable = innodb_log_buffer_size=8M
#innodb_flush_log_at_trx_commit=1
#set-variable = innodb_lock_wait_timeout=50

[mysqldump]
quick
set-variable = max_allowed_packet=16M

[mysql]
no-auto-rehash
# Remove the next comment character if you are not familiar with SQL
#safe-updates

[isamchk]
set-variable = key_buffer=20M
set-variable = sort_buffer=20M
set-variable = read_buffer=2M
set-variable = write_buffer=2M

[myisamchk]
set-variable = key_buffer=20M
set-variable = sort_buffer=20M
set-variable = read_buffer=2M
set-variable = write_buffer=2M

[mysqlhotcopy]
interactive-timeout

____________________________________________________________

위 파일을 조금 수정하자..^^;
[mysqld] 아래에 다음을 추가
set-variable = max_connections=1000 <==기본이 100
set-variable = wait_timeout=90 <==기본이 28800(?)
set-variable = max_connect_errors=1000 <==기본이 10 [연결초과가 이 수치 이상 초과하면 db연결이 블락된다]

이정도 설정만으로도 접속과도로인한 실패나 연결갯수 초과로 인한 디비블락은 어느 정도 해결할 수 있을것 같다..
설정 저장후 mysql shutdown 과 시작명령을 내린 후 설정사항이 잘 변경 됐는지 확인한다.
^^




관련글 :


출처 : http://iegate.net/bbs/board.php?bo_table=plus03&wr_id=66