MySQL編譯參數多而復雜,讓新手感到很頭大,如果是正式生成環境安裝MySQL,沒有充足的時間去研究每一個參數代表的意義,個人建議使用余洪春前輩整理的編譯參數,便捷高效!
MySQL的線上安裝建議采取編譯安裝的方法,這樣性能上有較大提升,,源碼包的編譯參數會默認以Debgu模式生成二進制代碼,而Debug模式給MySQL帶來的性能損失是比較大的,所以當我們編譯准備安裝的產品代碼時,一定不要忘記使用“—without-debug”參數禁用Debug模式。
而如果把—with-mysqld-ldflags和—with-client-ldflags二個編譯參數設置為—all-static的話,可以告訴編譯器以靜態方式編譯和編譯結果代碼得到最高的性能。
使用靜態編譯和使用動態編譯的代碼相比,性能差距可能會達到5%至10%之多。
編譯參數如下所示(適合5.4及之前的版本):
./configure --prefix=/usr/local/mysql \ --without-debug \ --without-bench \ --enable-thread-safe-client \ --enable-assembler \ --enable-profiling \ --enable-community-features \ --with-mysqld-ldflags=-all-static \ --with-client-ldflags=-all-static \ --with-charset=utf8 \ #具體看網站環境決定默認編碼 --with-extra-charset=all \ --with-innodb \ #個人博客可以不開啟innodb --with-csv-storage-engine \ --with-federated-storage-engine \ --with-mysqld-user=mysql \ --without-embedded-server \ --with-server-suffix=-community \ --with-unix-socket-path=/usr/local/mysql/sock/mysql.sock