MySQL編譯參數(shù)多而復(fù)雜,讓新手感到很頭大,如果是正式生成環(huán)境安裝MySQL,沒有充足的時(shí)間去研究每一個(gè)參數(shù)代表的意義,個(gè)人建議使用余洪春前輩整理的編譯參數(shù),便捷高效!
MySQL的線上安裝建議采取編譯安裝的方法,這樣性能上有較大提升,,源碼包的編譯參數(shù)會(huì)默認(rèn)以Debgu模式生成二進(jìn)制代碼,而Debug模式給MySQL帶來的性能損失是比較大的,所以當(dāng)我們編譯準(zhǔn)備安裝的產(chǎn)品代碼時(shí),一定不要忘記使用“―without-debug”參數(shù)禁用Debug模式。
而如果把―with-mysqld-ldflags和―with-client-ldflags二個(gè)編譯參數(shù)設(shè)置為―all-static的話,可以告訴編譯器以靜態(tài)方式編譯和編譯結(jié)果代碼得到最高的性能。
使用靜態(tài)編譯和使用動(dòng)態(tài)編譯的代碼相比,性能差距可能會(huì)達(dá)到5%至10%之多。
編譯參數(shù)如下所示(適合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 / #具體看網(wǎng)站環(huán)境決定默認(rèn)編碼--with-extra-charset=all /--with-innodb / #個(gè)人博客可以不開啟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
新聞熱點(diǎn)
疑難解答
圖片精選