일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 태안수영장펜션
- 야생개복숭아 판매
- 자연산 개복숭아
- 휘닉스파크
- 포천수영장
- 돌복숭아
- 덕소골프샵
- 포천투어
- 한라산
- 포천온천
- 개복숭아 판매
- 개복숭아
- wp-900
- 경기북부골프장
- 서원힐스
- 괌자유여행
- 자연산개복숭아
- 괌
- 충주골프장
- 제주도
- 제주도설경
- 제주도눈
- 포천가볼만한곳
- LGG6
- 파주골프장
- 조경철천문대
- 제주도눈썰매
- 야생개복숭아
- 개복숭아판매
- 잠실수영장
- Today
- Total
Live Brilliant
wait_timeout 문제 본문
my.cnf의
[mysqld] section에
wait_timeout=300
으로 설정 추가하고 다시 띄운다.(기본값은 28800)
mysql로 접속하여
show variables like 'wait_timeout';
을 해본다.
어라? 28800이다.
왜 적용이 안되는 걸까..
show variables like '%timeout%';
을 해보면,
interactive_timeout이라는게 있는데,
이게 바로 커맨드라인 클라이언트인
mysql (보통 /usr/local/mysql/bin/mysql 또는 /usr/local/bin/mysql 등등)을 말하는 거다.
당연히 mysql 기본 클라이언트로 interactive mode접속하면
wait_timeout을 interactive_timeout값으로 바꿔주는거다.
왜냐구?
interactive mode로 접속했으니까 그렇지 ㅡ_ㅡ
show global variables like '%timeout%';
을 해본다.
wait_timeout=300
으로 설정이 잘 되어있다.
즉, interactive mode가 아닌 접속 쓰레드에 대해서 wait_timeout이 새로 설정한 값이 된다는거다.
당연히 mysql로 접속해서는 확인을 못한다.
본인이 작성하는 프로그램의 라이브러리를 이용하여 테스트 커넥션을 만들고
300초간 아무것도 하지 않은 후에 쿼리를 하나 날려보자
"SELECT 1" 과 같은..
에러가 난다.
2006, Mysql server has gone away.
설정한 wait_timeout이 먹었다.
'개발은 핵찜이야 > 리눅스' 카테고리의 다른 글
서버 접속자 파악 (0) | 2012.04.13 |
---|---|
crontab 명령어 (0) | 2012.04.13 |
서버.. MySql 로그 남기려면.. (0) | 2012.04.13 |
파일 용량 특정 위치 찾기 awk (0) | 2012.04.13 |
awk 명령어 사용방법 (0) | 2012.04.13 |