mysql配置參數(shù)性能優(yōu)化選項(xiàng):Max_connections特性和配置優(yōu)化
http://www.itokit.com/2012/1018/74794.html
MySQL的max_connections參數(shù)用來(lái)設(shè)置最大連接(用戶)數(shù)。每個(gè)連接MySQL的用戶均算作一個(gè)連接,max_connections的默認(rèn)值為100。本文將講解此參數(shù)的詳細(xì)作用與性能影響。
2、在配置文件my.cnf中設(shè)置max_connections的值
max_connections配置參數(shù)的相關(guān)的特性
1、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;
2、這個(gè)參數(shù)實(shí)際起作用的最大值(實(shí)際最大可連接數(shù))為16384,即該參數(shù)最大值不能超過(guò)16384,即使超過(guò)也以16384為準(zhǔn);
3、增加max_connections參數(shù)的值,不會(huì)占用太多系統(tǒng)資源。系統(tǒng)資源(CPU、內(nèi)存)的占用主要取決于查詢的密度、效率等;
4、該參數(shù)設(shè)置過(guò)小的最明顯特征是出現(xiàn)“Too many connections”錯(cuò)誤;
如何去調(diào)整max_connections參數(shù)的值(有以下三個(gè)方法可調(diào)整)
調(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文件:
C/C++ Code復(fù)制內(nèi)容到剪貼板
- {“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í)行
C/C++ Code復(fù)制內(nèi)容到剪貼板
- ./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í)行如下命令:
C/C++ Code復(fù)制內(nèi)容到剪貼板
- [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。
mysql的max_connections的總結(jié)
mysql的max_connections的總結(jié)
總體來(lái)說(shuō),該參數(shù)在服務(wù)器資源夠用的情況下應(yīng)該盡量設(shè)置大,以滿足多個(gè)客戶端同時(shí)連接的需求。否則將會(huì)出現(xiàn)類(lèi)似“Too many connections”的錯(cuò)誤。
posted on 2014-01-27 15:12 gdufo 閱讀(1049) 評(píng)論(1) 編輯 收藏 所屬分類(lèi): Database (oracle, sqlser,MYSQL)