MySQL too many connections的解決方法
需要連線數比較多的程式常常會出現too many connections的錯誤,影響的配置主要有下面三個:
1.max_connections(最大連線數)
預設為100。
2.wait_timeout(等待時間)
預設為28800秒(8小時),表示關閉非互動連線前等待活動的時間。
3.interactive_timeout(互動時間)
預設為28800秒(8小時),表示關閉互動連線前等待活動的時間。
可以修改mysql的配置,根據需要設定合理的數值。設定的方法有兩種:
1.控制檯
登入mysql:mysql -u root -p 輸入密碼
檢視變數:show variables like "xxx"; 例如可以填max_connections
修改最大連線數:set global max_connections=1000;
修改等待時間:set global wait_timeout=500;
修改互動時間:set global interactive_timeout=500;
檢視連線數:show processlist; 對於設定合理的最大連線數具有參考價值
2.配置檔案
如果啟動時沒有指定配置檔案,預設使用安裝目錄根目錄和預設目錄下的my.cnf檔案
在配置檔案中將上述幾個變數數值修改即可。
P.S.一般在出現too many connections的情況下重啟資料庫服務會得到暫時的緩解:service mysqld stop/service mysqld start
參考連結:
https://blog.csdn.net/qq_31454017/article/details/71108278
http://www.cnblogs.com/jiunadianshi/articles/2475475.html
https://blog.csdn.net/fdipzone/article/details/52705507
https://blog.csdn.net/qing_gee/article/details/49507817