정보공간_1

[4기 대구 박병권] apmsetup 사용시 mysql 설정방법 본문

IT 놀이터/Elite Member Tech & Talk

[4기 대구 박병권] apmsetup 사용시 mysql 설정방법

알 수 없는 사용자 2013. 11. 28. 05:17

안녕하세요

대구 멤버십 21-2기 박병권입니다.

이번 포스팅에는 데이터베이스 서버 접속이 빈번한 MySQL 서버 설정 방법에 대해 이야기 하려고 합니다.

 

 

데이터베이스 접근이 빈번할 경우 그 것에 알맞은 서버 설정을 하지 않으면 제대로 된 성능을 이끌어 내지 못합니다. 심지어 서버가 멈추는 현상이 발생할 수도 있습니다. 지금부터 mysql 서버 설정 방법을 말씀 드릴려고 합니다.

 

MySQL 서버 설정 방법은

 

 

위 보시는 my.ini파일을 수정하면 가능합니다.

하지만 C:\APM_Setup\Server\MySQL5\data\my.ini 파일이 아닌

C:\APM_Setup\Server\MySQL5\my.ini파일을 읽어 들입니다. 즉 위 사진에 있는 my.ini파일은 없어도 되는 파일입니다. 따라서 apmsetup에 기본설치를 하고 아무 설정을 건드리지 않으면 기본설정으로 되어 있습니다. 기본 설정은 서버 용량, 성능 등을 굉장히 낮게 되어 있으므로 큰 성능향상을 바라기는 힘들다.

 

C:\APM_Setup\Server\MySQL5 해당 경로에 들어가보면 apmsetup5가지 설정법을 미리 제시해 주고 있다.

my-samll.ini은 아주 작은 데이터베이스 환경이 설정되어 있고 방대한 데이터베이스 설정 파일도 있습니다. 이런 파일들 중 원하는 설정파일을 my.ini로 파일명만 고치고 서버를 재시작한다면 원하는 성능을 발휘 할 수 있습니다.

 

주의사항

1. 데이터 접속시간이 길다면?

 

데이터베이스 접속시간이 길다면 my.ini파일을 열고 mysqld 섹션에 skip-name-resolve를 추가해야 한다. 이는 Reverse DNS Lookup을 방지하는 역할을 하므로써 인증 절차를 무시하므로 속도가 빨라집니다.

 

2. 접속자수 제한

다수의 접속자수를 제한하기 위해 mysql에서 기본으로 153명으로 지정되어 있습니다. 이 보다 더 많은 접속이 올 경우 접속이 지연되거나 불능되게 됩니다. 이럴 경우 mysqld 섹션에 max_connections=사용자수를 입력하고 서버 재시작을 한다면 사용자는 최대 1000명이 접속가능합니다.

 

 

3. Wait_timeout 제한

Wait_timeout은 사용자가 데이터베이스와 접속을 끊었지만 wait_timeout 시간동안 서버에서 정보를 가지고 있습니다. 이때는 실질적으로는 접속이 끊겼지만 서버에서는 아직 접속중이라고 생각하고 있습니다. 이럴 때 서버에서 접속을 끊어주는 시간을 설정해야 합니다.

기본적인 설정은 28800초로 되어 있습니다. 따라서 8시간 동안은 접속만 할뿐 접속종료를 하지 않습니다. 8시간동안 아무런 쿼리를 요청하지 않으면 그 때 접속을 종료하게 됩니다. 따라서 동시접속자수가 20~30명 정도 된다면 wait_timeout 시간을 300~500초 정도로 설정한다면 무리 없이 작동 될 것이라고 생각합니다.