MySQL優(yōu)化全攻略-服務(wù)器參數(shù)調(diào)整
添加時間:2012-12-22 9:43:33
添加:
思海網(wǎng)絡(luò)
正確的編譯方法固然重要,但它只是提高MySQL服務(wù)器性能工作的一部分。MySQL服務(wù)器的許多參數(shù)會影響服務(wù)器的性能表現(xiàn),而且我們可以把這些參數(shù)保存到配置文件,使得每次MySQL服務(wù)器啟動時這些參數(shù)都自動發(fā)揮作用。這個配置文件就是my.cnf。
MySQL服務(wù)器提供了my.cnf文件的幾個示例,它們可以在/usr/local/mysql/share/mysql/目錄下找到,名字分別為my-small.cnf、my-medium.cnf、my-large.cnf以及my-huge.cnf。文件名字中關(guān)于規(guī)模的說明描述了該配置文件適用的系統(tǒng)類型。例如,如果運行MySQL服務(wù)器的系統(tǒng)內(nèi)存不多,而且MySQL只是偶爾使用,那么使用my-small.cnf配置文件最為理想,這個配置文件告訴mysqld daemon使用最少的系統(tǒng)資源。反之,如果MySQL服務(wù)器用于支持一個大規(guī)模的在線商場,系統(tǒng)擁有2G的內(nèi)存,那么使用mysql-huge.cnf最為合適。
要使用上述示例配置文件,我們應(yīng)該先復制一個最適合要求的配置文件,并把它命名為my.cnf。這個復制得到的配置文件可以按照如下三種方式使用:
全局:把這個my.cnf文件復制到服務(wù)器的/etc目錄,此時文件中所定義的參數(shù)將全局有效,即對該服務(wù)器上運行的所有MySQL數(shù)據(jù)庫服務(wù)器都有效。
局部:把這個my.cnf文件復制到[MYSQL-INSTALL-DIR]/var/將使該文件只對指定的服務(wù)器有效,其中[MYSQL-INSTALL-DIR]表示安裝MySQL的目錄。
用戶:最后,我們還可以把該文件的作用范圍局限到指定的用戶,這只需把my.cnf文件復制到用戶的根目錄即可。
那么,如何設(shè)置my.cnf文件中的參數(shù)呢?或者進一步說,哪些參數(shù)是我們可以設(shè)置的呢?所有這些參數(shù)都對MySQL服務(wù)器有著全局性的影響,但同時每一個參數(shù)都和MySQL的特定部分關(guān)系較為密切。例如,max_connections參數(shù)屬于mysqld一類。那么,如何才能得知這一點呢?這只需執(zhí)行如下命令:
% >/usr/local/mysql/libexec/mysqld --help
該命令將顯示出和mysqld有關(guān)的各種選項和參數(shù)。要尋找這些參數(shù)非常方便,因為這些參數(shù)都在“Possible variables for option --set-variable (-O) are”這行內(nèi)容的后面。找到這些參數(shù)之后,我們就可以在my.cnf文件中按照如下方式設(shè)置所有這些參數(shù):
set-variable = max_connections=100
這行代碼的效果是:同時連接MySQL服務(wù)器的最大連接數(shù)量限制為100。不要忘了在my.cnf文件[mysqld]小節(jié)加上一個set-variable指令,具體請參見配置文件中的示例
關(guān)鍵字:服務(wù)器、MySQL、數(shù)據(jù)庫
MySQL服務(wù)器提供了my.cnf文件的幾個示例,它們可以在/usr/local/mysql/share/mysql/目錄下找到,名字分別為my-small.cnf、my-medium.cnf、my-large.cnf以及my-huge.cnf。文件名字中關(guān)于規(guī)模的說明描述了該配置文件適用的系統(tǒng)類型。例如,如果運行MySQL服務(wù)器的系統(tǒng)內(nèi)存不多,而且MySQL只是偶爾使用,那么使用my-small.cnf配置文件最為理想,這個配置文件告訴mysqld daemon使用最少的系統(tǒng)資源。反之,如果MySQL服務(wù)器用于支持一個大規(guī)模的在線商場,系統(tǒng)擁有2G的內(nèi)存,那么使用mysql-huge.cnf最為合適。
要使用上述示例配置文件,我們應(yīng)該先復制一個最適合要求的配置文件,并把它命名為my.cnf。這個復制得到的配置文件可以按照如下三種方式使用:
全局:把這個my.cnf文件復制到服務(wù)器的/etc目錄,此時文件中所定義的參數(shù)將全局有效,即對該服務(wù)器上運行的所有MySQL數(shù)據(jù)庫服務(wù)器都有效。
局部:把這個my.cnf文件復制到[MYSQL-INSTALL-DIR]/var/將使該文件只對指定的服務(wù)器有效,其中[MYSQL-INSTALL-DIR]表示安裝MySQL的目錄。
用戶:最后,我們還可以把該文件的作用范圍局限到指定的用戶,這只需把my.cnf文件復制到用戶的根目錄即可。
那么,如何設(shè)置my.cnf文件中的參數(shù)呢?或者進一步說,哪些參數(shù)是我們可以設(shè)置的呢?所有這些參數(shù)都對MySQL服務(wù)器有著全局性的影響,但同時每一個參數(shù)都和MySQL的特定部分關(guān)系較為密切。例如,max_connections參數(shù)屬于mysqld一類。那么,如何才能得知這一點呢?這只需執(zhí)行如下命令:
% >/usr/local/mysql/libexec/mysqld --help
該命令將顯示出和mysqld有關(guān)的各種選項和參數(shù)。要尋找這些參數(shù)非常方便,因為這些參數(shù)都在“Possible variables for option --set-variable (-O) are”這行內(nèi)容的后面。找到這些參數(shù)之后,我們就可以在my.cnf文件中按照如下方式設(shè)置所有這些參數(shù):
set-variable = max_connections=100
這行代碼的效果是:同時連接MySQL服務(wù)器的最大連接數(shù)量限制為100。不要忘了在my.cnf文件[mysqld]小節(jié)加上一個set-variable指令,具體請參見配置文件中的示例
關(guān)鍵字:服務(wù)器、MySQL、數(shù)據(jù)庫
新文章:
- CentOS7下圖形配置網(wǎng)絡(luò)的方法
- CentOS 7如何添加刪除用戶
- 如何解決centos7雙系統(tǒng)后丟失windows啟動項
- CentOS單網(wǎng)卡如何批量添加不同IP段
- CentOS下iconv命令的介紹
- Centos7 SSH密鑰登陸及密碼密鑰雙重驗證詳解
- CentOS 7.1添加刪除用戶的方法
- CentOS查找/掃描局域網(wǎng)打印機IP講解
- CentOS7使用hostapd實現(xiàn)無AP模式的詳解
- su命令不能切換root的解決方法
- 解決VMware下CentOS7網(wǎng)絡(luò)重啟出錯
- 解決Centos7雙系統(tǒng)后丟失windows啟動項
- CentOS下如何避免文件覆蓋
- CentOS7和CentOS6系統(tǒng)有什么不同呢
- Centos 6.6默認iptable規(guī)則詳解