mysql的最佳化分為三個部分
1.物理伺服器硬體的最佳化
mysql每秒鐘都進行大量的,複雜的查詢操作,對磁碟的1/O有很高的要求,通常認為1/O是制約mysql效能的最大因素。
2.mysql安裝時的編譯最佳化
--static 靜態連結提高13%效能
--with-client-ldflags=-all-static
--with-mysqld-ldflags=-all-static
--pgcc 如果是Inter處理器,使用pgcc提高1%效能
CFLAGS="-O3 -mpentiumpro -mstack-align-double" CXX=gcc \
CXXFLAGS="-O3 -mpentiumpro -mstack-align-double \
--felide-constructors -fno-exceptions -fno-rtti"
Unix Socket 使用unix通訊端連結提高7.5%效能,所以在windows下mysql效能肯定不如unix下面
--with-unix-socket-path=/usr/local/mysql/tmp/mysql.sock
--enable-assembler允許使用彙編模式(最佳化效能)
--without-debug 編譯安裝時預設已debug模式產生二進位代碼,而該方式會給mysql帶來很大的效能損失
3.自身設定檔的最佳化 見後面的配置文檔
------------------------------------------------------------------------
作業系統及其mysql設定檔說明
系統:Centos5.5
mysql:mysql-5.1.58.tar.gz源碼包
安裝目錄:/usr/local/mysql/
資料目錄:/data/mysql/3306/data/
二進位日誌:/data/msyql/3306/binlog/
relay日誌:/data/mysql/3306/relaylog/
設定檔:/data/mysql/3306/my.cnf
mysql.sock檔案:/data/mysql/3306/mysql.sock
------------------------------------------------------------------------
1.安裝gcc ncurses-devel
yum -y install gcc ncurses-devel
2.建立使用者
/usr/sbin/groupadd mysql
/usr/sbin/useradd -s /sbin/nologin -g mysql -M mysql