2012-02-09 3 views
1

아파치 + PHP + MySQL을 사용하는 사이트 중 하나가 연결을 해제하지 않았습니다. 연결 번호는 계속 증가했습니다. 연결 상태는 절전입니다. 포트 50488를 사용하여 MySQL로 연결mysql 연결이 닫히지 않았습니다

| 138 | root | localhost  | NULL | Sleep | 183 |  | NULL    | 
| 140 | root | localhost:50488 | A | Sleep | 256 |  | NULL    | 
| 142 | root | localhost:50512 | A | Sleep | 253 |  | NULL    | 
| 151 | root | localhost:50668 | A | Sleep | 222 |  | NULL    | 
| 152 | root | localhost:50684 | A | Sleep | 221 |  | NULL    | 
| 155 | root | localhost:50714 | A | Sleep | 214 |  | NULL    | 
| 157 | root | localhost:50751 | A | Sleep | 207 |  | NULL    | 

점검 : PHP 때 스크립트 끝에 자동으로 연결을 닫기 때문에

COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME 
mysqld 17147 mysql 15u IPv4 150696739  0t0 TCP localhost:mysql->localhost:50488 (ESTABLISHED) 
httpd 17487 apache 18u IPv4 150696738  0t0 TCP localhost:50488->localhost:mysql (ESTABLISHED) 

그것은 말도 안돼.

어떤 이유로 든이 문제가 발생할 수 있습니까?

+0

, 즉 (MySQL의 연결이 계속 다음 활성이 연결 설립 페이지 상단, 이후 페이지가 STILL 응답에 다른 자원을 기다리고 의미입니다 연결이 수면 상태에있는 이유를 설명하십시오.) – ajreal

+0

@ajreal 페이지가 성공적으로 끝났음을 확인할 수 있습니다. 연결 상태가 잠자기 상태입니다. –

답변

3

지속적인 연결을 사용하고 있습니까? 사용하지 마십시오.

상세 정보 : http://www.php.net/manual/en/features.persistent-connections.php

그리고, 내 자신의 경험에서, 우리는 매우 같은 문제가 있고,이 솔루션은 일반 연결에 영구 연결을 변경했다 번. 나는 세부 사항을 기억하지 않는다. 이것은 귀하의 경우 일 수도 있고 아닐 수도 있습니다. 여러 개의 쿼리가있는 경우

0

같이, 단지 파일의 끝에 추가, 하나 개의 파일에 ... 쿼리의 끝에서 mysql_close($connection);을 추가 $connection 변수가

</body> 
</html> 
<?php 
    mysql_close($connection); 
?> 

* 입니다

연결을 종료합니다.

1

문제

  1. @ignore_user_abort (TRUE)에 의해 야기된다; 대본은 결코 죽지 않았습니다.

  2. 코드에 오류가 있으며 연결이 닫히지 않았습니다.

일부 페이지가 터무니없이 느린 실행 될 수
관련 문제