程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> MySQL綜合教程 >> 總結MySQL修正最年夜銜接數的兩個方法

總結MySQL修正最年夜銜接數的兩個方法

編輯:MySQL綜合教程

總結MySQL修正最年夜銜接數的兩個方法。本站提示廣大學習愛好者:(總結MySQL修正最年夜銜接數的兩個方法)文章只能為提供參考,不一定能成為您想要的結果。以下是總結MySQL修正最年夜銜接數的兩個方法正文


成績

在應用MySQL數據庫的時刻,常常會碰到這麼一個成績,就是“Can not connect to MySQL server. Too many connections”-mysql 1040毛病,這是由於拜訪MySQL且還未釋放的銜接數量曾經到達MySQL的下限。平日,mysql的最年夜銜接數默許是100, 最年夜可以到達16384。

經常使用的有兩種方法修正最年夜銜接數。

處理方法一:經由過程敕令

可以經由過程 set GLOBAL max_connections=100; 敕令將最年夜銜接數設置為100,此辦法是即時失效的,不須要重啟mysql辦事。以下圖所示:

需留意的是,要經由過程root權限的mysql帳號能力操作,不然會報“1227 - Access denied; you need (at least one of) the SUPER privilege(s) for this operation”的毛病。

同時,從上圖也能夠看出,設置max_connections最小值為1。

設置完成後,我再經由過程另外一個終端銜接時,就報出了以下的毛病提醒:1040-Too many connections

處理方法二:修正my.cnf

翻開mysql的設置裝備擺設文件vim /etc/my.cnf,參加max_connections=100一行(假如有,直接修正值便可),然後重啟辦事:/etc/init.d/mysqld restart,此時失效。

差別:

1.經由過程修正設置裝備擺設文件,須要重啟辦事;而用敕令修正,即時失效。

2.采取修正設置裝備擺設文件的方法,更穩固靠得住。由於假如設置裝備擺設文件中有max_connections=100,再去用敕令修正的話,一旦重啟mysql辦事後,會從新以設置裝備擺設文件中指定的銜接數為准。

總結:

在修正最年夜銜接數的時刻會有如許一個疑問—這個值是否是越年夜越好,或許設置為多年夜才適合?這個參數的年夜小要綜合許多身分來斟酌,好比應用的平台所支撐的線程庫數目(windows只能支撐到2048)、辦事器的設置裝備擺設(特殊是內存年夜小)、每一個銜接占用資本(內存和負載)的若干、體系須要的呼應時光等。可以在global或session規模內修正這個參數。銜接數的增長會帶來許多連鎖反響,須要在現實中防止由此激發的負面影響。願望本文年夜家應用mysql有所贊助。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved