database.sarang.net
UserID
Passwd
Database
DBMS
ㆍMySQL
PostgreSQL
Firebird
Oracle
Informix
Sybase
MS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
MySQL Q&A 29899 게시물 읽기
No. 29899
jsp mysql(버젼5) jdk버젼(1.6) 커넥션풀 관련
작성자
문수영(fyzh99)
작성일
2011-01-25 18:02
조회수
9,163

jsp dbcp 커넥션 풀을 사용하는데요

가끔씩 풀이 끊키는 현상이 발행합니다 .

com.mysql.jdbc.CommunicationsException: Communications link failure due to underlying exception:
오류 내용인데요

내용을 찾아보니까 wait_timeout 을 길게 하면은 된다고 하는데요

호스팅업체에서는 공통으로 사용하는 db서버여서 변경이 안된다고 하네요

다른 방법은 없나요??

mysql sessionVariable  설정하면은 내가쓰는 풀만 wait time_out을 설정할수 있다고하는데 어떻게 하는건지 알려주세요

감사합니다

 

이 글에 대한 댓글이 총 3건 있습니다.

 

 

set session wait_time=28800

 

혹인 몇분 마다 select 1;  같은 쿼리를 주기적으로 날려주시는 방법도 있고요..

민족님이 2011-01-26 01:25에 작성한 댓글입니다. Edit

set session wait_time=28800 은 어떻게 사용하는거에요??

 

ValidationQuery=select 1 했는데도 안되요 ㅠ,ㅠ;;

 

 

문수영(fyzh99)님이 2011-01-26 13:08에 작성한 댓글입니다.

안녕하세요 박성원입니다.

실로 오랜만에 답글을 달게되네요 ^^;

커넥션이 끊긴다는것은 하나의 세션에서 처리하는 Query 가 너무나 오래걸려서 mysql이 지정한

시간을 초과하게됩니다 결과적으로 mysql이 해당 세션 자체를 끊어버리는 현상이 발생합니다.

 

1. 보통은 쿼리를 튜닝하거나 다른 방식으로 Source를 수정하여 고치는 방법을 쓰고 있습니다만,

2. 민족님 말씀처럼 원천적으로 mysql variable을 수정해서 방지 할수 있습니다. mysql configure file을 수정하시거나 세션에서 수정이 가능합니다 그냥 쿼리를 날리듯이 실행하면 됩니다.

>> set session wait_timeout=288000
 

단, 세션단위의 세팅이기 때문에 새로운 connection에는 적용이 안됩니다.

 

 

그럼 건승하시길...

박성원(darkancia)님이 2011-01-28 10:53에 작성한 댓글입니다.
이 댓글은 2011-01-28 11:09에 마지막으로 수정되었습니다.
[Top]
No.
제목
작성자
작성일
조회
29902failed allocate memory 원인 좀 알려주세요
박상준
2011-02-01
8330
29901DB에 어떤 테이블이 있는지 모를경우 테이블 리스트를 볼 수 이는 명령어는 뭔가요? [2]
NOVICE
2011-01-28
7839
29900새해 복 많이 받으세요 ^^ [1]
박성원
2011-01-28
7514
29899jsp mysql(버젼5) jdk버젼(1.6) 커넥션풀 관련 [3]
문수영
2011-01-25
9163
29897특정문자 잘라내기 [2]
최영민
2011-01-24
8448
29895sql문 작성하는 것좀 도와주세요~~~ [3]
안혜진
2011-01-19
8571
29893말도 안되는 쿼리가 작동을 해버렸네요...물론 실행결과는... [1]
송승우
2011-01-17
8066
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.025초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다