MySQL配置文件my.cnf中文詳解附mysql性能優化方法分享

Mysql參數優化對于新手來講,是比較難懂的東西,其實這個參數優化,是個很復雜的東西,對于不同的網站,及其在線量,訪問量,帖子數量,網絡情況,以及機器硬件配置都有關系,優化不可能一次性完成,需要不斷的觀察以及調試,才有可能得到最佳效果。

下面先說我的服務器的硬件以及論壇情況,
CPU: 2顆四核Intel Xeon 2.00GHz
內存: 4GB DDR
硬盤: SCSI 146GB
論壇:在線會員 一般在 5000 人左右 – 最高記錄是 13264.
下面,我們根據以上硬件配置結合一份已經做過一次優化的my.cnf進行分析說明:有些參數可能還得根據論壇的變化情況以及程序員的程序進行再調整。
[mysqld]
port = 3306
serverid = 1
socket = /tmp/mysql.sock
skip-locking # 避免MySQL的外部鎖定,減少出錯幾率增強穩定性。

skip-name-resolve





























































===================================================================
存儲引擎是什么?MySQL中的數據用各種不同的技術存儲在文件(或者內 正確的編譯方法固然重要,但它只是提高MySQL服務器性能工作的一部分。MySQL服務器的許多參數會影響服務器的性能表現,而且我們可以把這些參數保存到配置文件,使得每次MySQL服務器啟動時這些參數都自動發揮作用。這個配置文件就是my.cnf。
MySQL服務器提供了my.cnf文件的幾個示例,它們可以在/usr/local/mysql/share/mysql/目錄下找到,名字分別為 my-small.cnf、my-medium.cnf、my-large.cnf以及my-huge.cnf。文件名字中關于規模的說明描述了該配置文件適用的系統類型。例如,如果運行MySQL服務器的系統內存不多,而且MySQL只是偶爾使用,那么使用my-small.cnf配置文件最為理想,這個配置文件告訴mysqld daemon使用最少的系統資源。反之,如果MySQL服務器用于支持一個大規模的在線商場,系統擁有2G的內存,那么使用mysql-huge.cnf 最為合適。
要使用上述示例配置文件,我們應該先復制一個最適合要求的配置文件,并把它命名為my.cnf。這個復制得到的配置文件可以按照如下三種方式使用:
全局:把這個my.cnf文件復制到服務器的/etc目錄,此時文件中所定義的參數將全局有效,即對該服務器上運行的所有MySQL數據庫服務器都有效。
局部:把這個my.cnf文件復制到[MYSQL-INSTALL-DIR]/var/將使該文件只對指定的服務器有效,其中[MYSQL-INSTALL-DIR]表示安裝mysql的目錄。
用戶:最后,我們還可以把該文件的作用范圍局限到指定的用戶,這只需把my.cnf文件復制到用戶的根目錄即可。
那么,如何設置my.cnf文件中的參數呢?或者進一步說,哪些參數是我們可以設置的呢?所有這些參數都對MySQL服務器有著全局性的影響,但同時每一個參數都和MySQL的特定部分關系較為密切。例如,max_connections參數屬于mysqld一類。那么,如何才能得知這一點呢?這只需執行如下命令:

% >/usr/local/mysql/libexec/mysqld –help
該命令將顯示出和mysqld有關的各種選項和參數。要尋找這些參數非常方便,因為這些參數都在“Possible variables for option –set-variable (-O) are”這行內容的后面。找到這些參數之后,我們就可以在my.cnf文件中按照如下方式設置所有這些參數:

set-variable = max_connections=100

這行代碼的效果是:同時連接MySQL服務器的最大連接數量限制為100。不要忘了在my.cnf文件[mysqld]小節加上一個set-variable指令,具體請參見配置文件中的示例。

? 版權聲明
THE END
喜歡就支持一下吧
點贊13 分享