看板 Database 關於我們 聯絡資訊
※ 引述《fishcomes (fish)》之銘言: : 各位前輩好~ : 這幾天被 too many connections 這個問題搞到睡都睡不好 : ... : 但連線數還是一直很高(一百多) : 我看 show processlist 有發現第一部分的寫入有同時出現好幾個 process : 想請問 PDO 的 persistent connection 他的運作方式是怎麼樣的? : pool 會有幾條 connection? : 還有請幫我看看,我哪邊用錯了? 事情做完之後,請記得叫用 mysql_close() : 或是還有什麼方式可以降低 connection? : 因為現在一直發生 too many connections : 我快炸了T^T 暫時先這麼做: 執行 set global max_connections = 256; 放大連線上限,這樣子應該可以先應急。如果主機不是代管的,也請 修改 my.ini (my.cnf for Linux),將上述選項的數字調大,下次 MySQL 啟動應該就照這個設定值。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.41.104.57
mrbigmouth:根本做法是改你的程式....盡量做到一個使用者一個連線 02/21 20:08
fishcomes:不過每個使用者都使用一下子而已,三萬次大部分為不同 02/21 20:12
fishcomes:使用者 02/21 20:12
fishcomes:我有把連線數調高,結束有 $pdo = null; 02/21 20:14
streitleak:$pdo = null <--不代表connection就被釋放了 02/21 21:46
fishcomes:那請問要如何釋放?因為我網路上看到 =null 會 close 02/22 10:51
fishcomes:connection >"< 02/22 10:51
chunhsiang:mysql_close() 02/22 13:09
mrbigmouth:PDO在unset時會自動close應該沒錯... 02/22 13:45
mrbigmouth:網路上有查到 pdo在遇到你於連線內進行transactions或 02/22 13:46
mrbigmouth:lock table鎖資源且未釋放時 會close失敗...檢查看看吧 02/22 13:47