我的一個使用Apache + PHP + 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 |
檢查哪個連接使用端口50488到MySQL的:
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)
這是荒謬自PHP腳本時結束時自動關閉所述連接。
任何原因可能導致此問題?
它可能是你的一些頁面運行得很慢,這意味着連接建立和頁面的頂部,隨後頁面仍然在等待其他資源的響應,然後mysql連接仍然是活動的解釋爲什麼連接處於睡眠狀態) – ajreal 2012-02-09 03:02:14
@ajreal我可以確認頁面已成功結束。並且連接狀態正在休眠 – 2012-02-09 03:12:22