如果mysql 連接數(shù)據(jù)設(shè)置不合理可能會導致很小的流量mysql就提示MySQL: ERROR 1040: Too many connections錯誤了,那么要如何才算是合理設(shè)置mysql最大連接數(shù)呢,下面我來給大家介紹介紹。

10年積累的成都網(wǎng)站設(shè)計、成都做網(wǎng)站經(jīng)驗,可以快速應對客戶對網(wǎng)站的新想法和需求。提供各種問題對應的解決方案。讓選擇我們的客戶得到更好、更有力的網(wǎng)絡服務。我雖然不認識你,你也不認識我。但先網(wǎng)站設(shè)計后付款的網(wǎng)站建設(shè)流程,更有遵義免費網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。
MySQL服務器的連接數(shù)并不是要達到最大的100%為好,還是要具體問題具體分析,下面就對MySQL服務器最大連接數(shù)的合理設(shè)置進行了詳盡的分析,供您參考。
我們經(jīng)常會遇見“MySQL: ERROR 1040: Too many connections”的情況,通常,mysql的最大連接數(shù)默認是100, 最大可以達到16384。
一種是訪問量確實很高,MySQL服務器抗不住,這個時候就要考慮增加從服務器分散讀壓力,另外一種情況是MySQL配置文件中max_connections值過小:
mysql show variables like 'max_connections';
+-----------------+-------+
| Variable_name | Value |
+-----------------+-------+
| max_connections | 256 |
+-----------------+-------+
這臺MySQL服務器最大連接數(shù)是256,然后查詢一下服務器響應的最大連接數(shù):
mysql show global status like 'Max_used_connections';
MySQL服務器過去的最大連接數(shù)是245,沒有達到服務器連接數(shù)上限256,應該沒有出現(xiàn)1040錯誤,比較理想的設(shè)置是:
Max_used_connections / max_connections * 100% ≈ 85%
最大連接數(shù)占上限連接數(shù)的85%左右,如果發(fā)現(xiàn)比例在10%以下,MySQL服務器連接上線就設(shè)置得過高了
在Windows下常用的有兩種方式修改最大連接數(shù)。
第一種:命令行修改。
mysql -uuser -ppassword(命令行登錄MySQL)
mysqlshow variables like 'max_connections';(查可以看當前的最大連接數(shù))
msyqlset global max_connections=1000;(設(shè)置最大連接數(shù)為1000,可以再次查看是否設(shè)置成功)
mysqlexit(推出)
這種方式有個問題,就是設(shè)置的最大連接數(shù)只在mysql當前服務進程有效,一旦mysql重啟,又會恢復到初始狀態(tài)。因為mysql啟動后的初始化工作是從其配置文件中讀取數(shù)據(jù)的,而這種方式?jīng)]有對其配置文件做更改。
第二種:修改配置文件。
這 種方式說來很簡單,只要修改MySQL配置文件my.ini 或 my.cnf的參數(shù)max_connections,將其改為max_connections=1000,然后重啟MySQL即可。但是有一點最難的就是my.ini這個文件在哪找。通常有兩種可能,一個是在安裝目錄下(這是比較理想的情況),另一種是在數(shù)據(jù)文件的目錄下,安裝的時候如果沒有人為改變目錄的話,一般就在C:/ProgramData/MySQL往下的目錄下。
與連接數(shù)相關(guān)的幾個參數(shù):
在修改最大連接數(shù)的時候會有這樣一個疑問—這個值是不是越大越好,或者設(shè)置為多大才合適?這個參數(shù)的大小要綜合很多因素來考慮,比如使用的平臺所支持的線程庫數(shù)量(windows只能支持到2048)、服務器的配置(特別是內(nèi)存大小)、每個連接占用資源(內(nèi)存和負載)的多少、系統(tǒng)需要的響應時間等。可以在global或session范圍內(nèi)修改這個參數(shù)。連接數(shù)的增加會帶來很多連鎖反應,需要在實際中避免由此引發(fā)的負面影響。
方法一:進入MYSQL安裝目錄 打開MYSQL配置文件 my.ini 或 my.cnf查找 max_connections=100 修改為 max_connections=1000 服務里重起MYSQL即可
方法二:MySQL的最大連接數(shù)默認是100客戶端登錄:mysql -uusername -ppassword
設(shè)置新的最大連接數(shù)為200:mysql set GLOBAL max_connections=200
顯示當前運行的Query:mysql show processlist
顯示當前狀態(tài):mysql show status
退出客戶端:mysql exit
查看當前最大連接數(shù):mysqladmin -uusername -ppassword variables
mysqlset global max_connections=3000; //設(shè)置連接數(shù)3000,這是全局設(shè)置但是重啟mysql后會消失。永久設(shè)置可以在/etc/my.cnf的[mysqld]下添加一行max_connections=3000
查看當前的Max_connections參數(shù)值:
mysql SELECT @@MAX_CONNECTIONS AS 'Max Connections';
設(shè)置該參數(shù)的值:
mysql set GLOBAL max_connections=1000;
(注意上面命令的大小寫)
修改完成后實時生效,無需重啟MySQL。
想永久生效需要修改my.cnf中max_connection的值,重啟后就會按照這個值生效啦
默認的最大連接數(shù)比較小,我安裝時,查到默認值是151,完全不滿足生產(chǎn)環(huán)境的要求。
重啟MySQL后,查看最大連接數(shù):
修改成功。
通常,mysql的最大連接數(shù)默認是100, 最大可以達到16384。
1、查看最大連接數(shù):
show variables like '%max_connections%';
2、修改最大連接數(shù)
方法一:修改配置文件。推薦方法一
進入MySQL安裝目錄 打開MySQL配置文件 my.ini 或 my.cnf查找 max_connections=100 修改為 max_connections=1000 服務里重起MySQL即可.
方法二:命令行修改。不推薦方法二
命令行登錄MySQL后。設(shè)置新的MySQL最大連接數(shù)為200:
MySQL set global max_connections=200。
這種方式有個問題,就是設(shè)置的最大連接數(shù)只在mysql當前服務進程有效,一旦mysql重啟,又會恢復到初始狀態(tài)。因為mysql啟動后的初始化工作是從其配置文件中讀取數(shù)據(jù)的,而這種方式?jīng)]有對其配置文件做更改。
分享標題:mysql怎么擴大連接數(shù),修改mysql的最大連接數(shù)
網(wǎng)頁地址:http://chinadenli.net/article25/dseocci.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供Google、企業(yè)建站、定制開發(fā)、靜態(tài)網(wǎng)站、面包屑導航、手機網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)