作者fishcomes (fish)
看板Database
標題[問題] MySQL:Too many connections請求協助
時間Tue Feb 21 17:34:07 2012
各位前輩好~
這幾天被 too many connections 這個問題搞到睡都睡不好
我使用 PHP + MySQL
主要常使用到 MySQL 的部分是:
1. 當使用者做了動作會被存到 MySQL
(頻率約為一天三萬次,某些時段容易多人一起做動作)
2. 每兩分鐘會抓750筆存的資料出來丟給同事的程式
丟完後刪除該筆資料
一開始我先將第一部分的寫入連線改成 persistent connection:
$pdo = new PDO('mysql:host='. DELIVERY_LOG_HOST. ';dbname='.
DELIVERY_LOG_NAME, DELIVERY_LOG_USER, DELIVERY_LOG_PASS,
array(PDO::ATTR_PERSISTENT => true));
後來我將這個 table 的 engine 從 MyISAM 改成 InnoDB
也有將 autocommit 設成 0。
但連線數還是一直很高(一百多)
我看 show processlist 有發現第一部分的寫入有同時出現好幾個 process
想請問 PDO 的 persistent connection 他的運作方式是怎麼樣的?
pool 會有幾條 connection?
還有請幫我看看,我哪邊用錯了?
或是還有什麼方式可以降低 connection?
因為現在一直發生 too many connections
我快炸了T^T
先謝謝各位了!!
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 60.250.65.124
推 hukhuk:有請mysql dba高手 02/21 19:01