mysql串連過多和死掉以及拒絕服務的解決方案

來源:互聯網
上載者:User

mysql串連過多導致總是死掉,後來網上搜尋發現此文自Mysql 5.x的某個版本之後,Mysql的自動關閉空閑串連的特性修改了,如果一個串連空閑到逾時時間(預設28000秒8小時),再次發起的Reconnect重新串連請求不會被接受,需要重建立立新串連,這就導致了SER的重連機制不能正常工作:SER只會在需要操作資料庫時去使用同一個串連介面,斷開了則發起重新串連請求,而且這個問題短期內SER也不能夠解決:)處理方法:1.使用Mysql 4.0或4.1版本,如果沒有用到Mysql 5的一些新特性比如預存程序觸發器之類。2.定時重啟Mysql伺服器或Ser(由於本問題可能同樣會影響到其它一些需要Mysql支援的伺服器程式,所以重啟Mysql伺服器為好,但需要檢測Mysql伺服器不被使用的一個時間重啟比較難確定)3.設定my.cnf,有mysqld欄位內增加參數:[mysqld]port = 3306socket = /tmp/mysql.sockwait_timeout= 500000interactive_timeout = 500000(500000秒約五六天的逾時時間,可根據實際需要選擇一個資料庫可能閒置最長時間稍大的時間值。)重啟Mysqld應用即可,也可以在執行mysqld時加-o wait_timeout=500000參數同樣效果。在mysql用戶端show variable時應該可以看到最後一條從預設的wait_time=28000變成500000了。(可能需要重啟機子如果重啟Mysqld一直不生效的話:)
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.