kkamagi's story

IT, 정보보안, 포렌식, 일상 공유

Database

Mysql timeout 설정

까마기 2017. 7. 14. 16:45
반응형

* MySQL Timeout 설정

 

안녕하세요. The Grit입니다. Mysql Timeout에 대해 포스팅 하도록 하겠습니다.

MySQL에서의 timeout은 interactive_timeout과 wait_timeout 이렇게 두 가지가 존재합니다.

1. interactive_timeout은 mysql> 과 같은 콘솔이나 터미널 모드(대화형 클라이언트)에서 mysqld와 client가 연결을 맺은 다음 요청을 기다리는 최대시간입니다.


2. wait_timeout은 API를 이용한 client 프로그램(PHP, JDBC, ODBC...) 상에서 최대 연결시간을 말합며, 설정된 시간 동안 아무 요청이 없으면 연결은 취소되고 다시 요청이 들어오면 자동으로 연결이 맺어집니다. 현재 설정된 값을 확인 하시려면 아래와 같은 명령으로 확인 가능합니다.

mysql

 



1) Global 설정 확인

mysql> show global variables like '%timeout';

 

2) Session 설정 확인

mysql> show variables like '%timeout';

 

 

3. Timeout 시간을 조절하려면 아래와 같이 설정합니다.

 

1) Global 설정

mysql> set global interactive_timeout=10;

mysql> set global wait_timeout=10;

 

2) Session 설정

mysql> set interactive_timeout=10;

mysql> set wait_timeout=10;

 

단, 위와 같은 방법은 mysql 데몬 재시작 시 초기 값으로 돌아갑니다. 

mysql 시작 시 고정된 값으로 설정하기 위해서는 아래와 같이 my.cnf 파일을 통해 설정합니다.

 

# vi /etc/my.cnf

 

[mysqld]

interactive_timeout=10

wait_timeout=10

 

 

* Mysql Query 응답 체크

반응형