MySQL性能優(yōu)化之max_connections配置參數(shù)淺析
MySQL的max_connections參數(shù)用來(lái)設(shè)置最大連接(用戶(hù))數(shù)。每個(gè)連接MySQL的用戶(hù)均算作一個(gè)連接,max_connections的默認(rèn)值為100。本文將講解此參數(shù)的詳細(xì)作用與性能影響。
與max_connections有關(guān)的特性
MySQL無(wú)論如何都會(huì)保留一個(gè)用于管理員(SUPER)登陸的連接,用于管理員連接數(shù)據(jù)庫(kù)進(jìn)行維護(hù)操作,即使當(dāng)前連接數(shù)已經(jīng)達(dá)到了max_connections。因此MySQL的實(shí)際最大可連接數(shù)為max_connections+1;
這個(gè)參數(shù)實(shí)際起作用的最大值(實(shí)際最大可連接數(shù))為16384,即該參數(shù)最大值不能超過(guò)16384,即使超過(guò)也以16384為準(zhǔn);
增加max_connections參數(shù)的值,不會(huì)占用太多系統(tǒng)資源。系統(tǒng)資源(CPU、內(nèi)存)的占用主要取決于查詢(xún)的密度、效率等;
該參數(shù)設(shè)置過(guò)小的最明顯特征是出現(xiàn)”Too many connections”錯(cuò)誤;
我們先來(lái)看下如何查看當(dāng)前mysql的max_connections的值:
如下sql
show variables like "max_connections";
顯示的結(jié)果如下格式
+-----------------+-------+
| Variable_name | Value |
+-----------------+-------+
| max_connections | 100 |
+-----------------+-------+
可以通過(guò)下面的sql語(yǔ)句將max_connections的值設(shè)置為200,當(dāng)然前提是當(dāng)前登錄的用戶(hù)有足夠的權(quán)限:
set global max_connections = 200;
這個(gè)設(shè)置會(huì)馬上生效,但是當(dāng)mysql重啟時(shí)這個(gè)設(shè)置會(huì)失效,更好的辦法是修改mysql的ini配置文件my.ini
找到mysqld塊,修改或者添加下面的設(shè)置:
max_connections=200
這樣修改之后,即便重啟mysql也會(huì)默認(rèn)載入這個(gè)配置了
不過(guò)為了安全期間,建議大家直接到my.ini里修改,么有可以加上。
調(diào)整max_connections參數(shù)的值
調(diào)整此參數(shù)的方法有幾種,既可以在編譯的時(shí)候設(shè)置,也可以在MySQL配置文件 my.cnf 中設(shè)置,也可以直接使用命令調(diào)整并立即生效。
1、在編譯的時(shí)候設(shè)置默認(rèn)最大連接數(shù)
打開(kāi)MySQL的源碼,進(jìn)入sql目錄,修改mysqld.cc文件:
{"max_connections", OPT_MAX_CONNECTIONS,
"The number of simultaneous clients allowed.", (gptr*) &max_connections,
(gptr*) &max_connections, 0, GET_ULONG, REQUIRED_ARG, 100, 1, 16384, 0, 1,
0},
紅色的”100″即為該參數(shù)的默認(rèn)值,修改為想要的數(shù)值,存盤(pán)退出。然后執(zhí)行
./configure;make;make install
重新編譯安裝MySQL;注意,由于編譯安裝且修改了MySQL源碼,此操作最好在安裝MySQL之前進(jìn)行;
2、在配置文件my.cnf中設(shè)置max_connections的值
打開(kāi)MySQL配置文件my.cnf
[root@www ~]# vi /etc/my.cnf
找到max_connections一行,修改為(如果沒(méi)有,則自己添加),
max_connections = 1000
上面的1000即該參數(shù)的值。
3、實(shí)時(shí)(臨時(shí))修改此參數(shù)的值
首先登陸mysql,執(zhí)行如下命令:
[root@www ~]# mysql -uroot -p
然后輸入MySQL Root的密碼。
查看當(dāng)前的Max_connections參數(shù)值:
mysql> SELECT @@MAX_CONNECTIONS AS 'Max Connections';
設(shè)置該參數(shù)的值:
mysql> set GLOBAL max_connections=1000;
(注意上面命令的大小寫(xiě))
修改完成后實(shí)時(shí)生效,無(wú)需重啟MySQL。
總體來(lái)說(shuō),該參數(shù)在服務(wù)器資源夠用的情況下應(yīng)該盡量設(shè)置大,以滿(mǎn)足多個(gè)客戶(hù)端同時(shí)連接的需求。否則將會(huì)出現(xiàn)類(lèi)似”Too many connections”的錯(cuò)誤。
一般情況下根據(jù)同時(shí)在線(xiàn)人數(shù)設(shè)置一個(gè)比較綜合的數(shù)字,我們?cè)O(shè)置的是10000.
- MySQL 性能優(yōu)化的最佳20多條經(jīng)驗(yàn)分享
- MySQL 百萬(wàn)級(jí)分頁(yè)優(yōu)化(Mysql千萬(wàn)級(jí)快速分頁(yè))
- MySQL查詢(xún)優(yōu)化之explain的深入解析
- MySQL Order by 語(yǔ)句用法與優(yōu)化詳解
- 淺談MySQL中優(yōu)化sql語(yǔ)句查詢(xún)常用的30種方法
- MySQL優(yōu)化必須調(diào)整的10項(xiàng)配置
- MySQL配置文件my.cnf參數(shù)優(yōu)化和中文詳解
- Mysql查詢(xún)最近一條記錄的sql語(yǔ)句(優(yōu)化篇)
- mysql優(yōu)化之慢查詢(xún)分析+explain命令分析+優(yōu)化技巧總結(jié)
相關(guān)文章
設(shè)置Mysql5.6允許外網(wǎng)訪(fǎng)問(wèn)的詳細(xì)流程分享
今天小編就為大家分享一篇設(shè)置Mysql5.6允許外網(wǎng)訪(fǎng)問(wèn)的詳細(xì)流程分享,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-05-05mysql自動(dòng)插入百萬(wàn)模擬數(shù)據(jù)的操作代碼
這篇文章主要介紹了mysql自動(dòng)插入百萬(wàn)模擬數(shù)據(jù)的示例代碼,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定參考借鑒價(jià)值,需要的朋友可以參考下2021-10-10解決MySQL因不能創(chuàng)建 PID 導(dǎo)致無(wú)法啟動(dòng)的方法
這篇文章主要給大家介紹了關(guān)于解決MySQL因不能創(chuàng)建 PID 導(dǎo)致無(wú)法啟動(dòng)的方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面跟著小編一起來(lái)學(xué)習(xí)學(xué)習(xí)吧。2017-06-06MySQL主從復(fù)制問(wèn)題總結(jié)及排查過(guò)程
這篇文章主要介紹了MySQL主從復(fù)制問(wèn)題總結(jié)及排查過(guò)程,mysql主從是常用的高可用架構(gòu)之一,也是使用最廣泛的的系統(tǒng)架構(gòu)。在生產(chǎn)環(huán)境中mysql主從復(fù)制有時(shí)會(huì)出現(xiàn)復(fù)制錯(cuò)誤問(wèn)題。下文更多內(nèi)容需要的小伙伴可以參考一下2022-03-03MySQL數(shù)據(jù)類(lèi)型中DECIMAL的用法實(shí)例詳解
這篇文章主要介紹了MySQL數(shù)據(jù)類(lèi)型中DECIMAL的用法實(shí)例詳解的相關(guān)資料,希望通過(guò)本文能幫助到大家,需要的朋友可以參考下2017-10-10windows 10 下mysql-8.0.17-winx64的安裝方法圖解
這篇文章主要介紹了windows 10 mysql-8.0.17-winx64的方法,本文圖文并茂給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-08-08MySQL如何比較兩個(gè)表數(shù)據(jù)的差異
這篇文章主要介紹了MySQL比較兩個(gè)表數(shù)據(jù)的差異,這些方式可以根據(jù)具體需求和數(shù)據(jù)結(jié)構(gòu)選擇合適的方法來(lái)比較兩個(gè)表的數(shù)據(jù)差異,本文給大家介紹的非常詳細(xì),需要的朋友可以參考下2023-10-10