Server Version : 4.0.27
Client Version : 4.0.26
서버 설정
wait_timeout : 600
connect_timeout : 5
클라이언트 API
PHP
제가 알고 있기로는 서버의 wait_timeout에 정해진 시간 동안 접속 대기(sleep)상태이면
서버가 해당 프로세서를 kill하는 것으로 알고 있습니다.
얼마전 서버의 버전을 4.0.19에서 업그레이드를 한 후 부터
client(웹서버)에서 접근이 되어 거의 영구적으로 접속을 유지하는 것들이 있습니다.
여러가지 방법으로 찾아 보다가.
php.ini의 mysql.allow_persistent를 Off로 변경도 해보았는데요.
그래서 특정한 프로세서가 죽지 않고 영구적으로 살아 있는 것이 나타납니다.
아래는 processlist한 결과 입니다.
--------+-----------------+----------------------+---------+-------------+------------+--------+
| Id | User | Host | db | Command | Time | State | Info |
+--------+-----------------+----------------------+---------+-------------+-----------+--------+
| 15990 | kkk | xxx:42601 | yyy | Sleep | 21153 | | NULL |
| 15991 | kkk | xxx:42602 | yyy | Sleep | 21153 | | NULL |
| 24223 | kkk | xxx:56248 | yyy | Sleep | 20726 | | NULL |
| 24224 | kkk | xxx:56249 | yyy | Sleep | 20726 | | NULL |
+--------+-----------------+----------------------+---------+-------------+-----------+--------+
mysql 버그를 찾아 봤는데 유사한 문제들은 reporting이 되고 있는데
뽀죡한 대안이 안 보여지네요
혹시 이런 문제를 알고 계신분 조언을 부탁합니다.
수고하세요.
|