MySQL 优化编译

三月 16th, 2010 Posted in mysql | 阅读次数: 871 次

1. -static 13%
–with-client-ldflags=-all-static
–with-mysqld-ldflags=-all-static
静态链接提高13%性能

 

2. -pgcc 1%
CFLAGS="-O3 -mpentiumpro -mstack-align-double" CXX=gcc \
CXXFLAGS="-O3 -mpentiumpro -mstack-align-double \
-felide-constructors -fno-exceptions -fno-rtti"
如果是Intel处理器,使用pgcc提高1%性能

 

3. Unix Socket 7.5%
–with-unix-socket-path=/usr/local/mysql/tmp/mysql.sock
使用unix套接字链接提高7.5%性能,所以在windows下mysql性能肯定不如unix下面

 

4. –enable-assembler 允许使用汇编模式(优化性能) 下面是总体的编译文件
编译代码
/usr/sbin/groupadd mysql
/usr/sbin/useradd -g mysql mysql
tar zxvf mysql-5.0.45.tar.gz
cd mysql-5.0.45
CFLAGS="-O3" CXX=gcc CXXFLAGS="-O3 -felide-constructors -fno-exceptions -fno-rtti -fomit-frame-pointer -ffixed-ebp" 
export CFLAGS CXX CXXFLAGS
./configure –prefix=/usr/local/mysql –enable-assembler –with-mysqld-ldflags=-all-static  –with-client-ldflags=-all-static  –with-unix-socket-path=/tmp/mysql.sock  –with-extra-charsets=gbk,gb2312,utf8,latin1  –without-debug –with-pthread –enable-thread-safe-client   –without-isam –with-innodb

make && make install
chmod +w /usr/local/webserver/mysql
chown -R mysql:mysql /usr/local/webserver/mysql
cp support-files/my-medium.cnf /usr/local/webserver/mysql/my.cnf

附:以下为附加步骤,如果你想在这台服务器上运行MySQL数据库,则执行以下两步。如果你只是希望让PHP支持 MySQL扩展库,能够连接其他服务器上的MySQL数据库,那么,以下两步无需执行。

1)、以mysql用户帐号的身份建立数据表:
/usr/local/webserver/mysql/bin/mysql_install_db –defaults-file=/usr/local/webserver/mysql/my.cnf –basedir=/usr/local/webserver/mysql –datadir=/usr/local/webserver/mysql/data –user=mysql –pid-file=/usr/local/webserver/mysql/mysql.pid –skip-locking –port=3306 –socket=/tmp/mysql.sock

 

2)、启动MySQL(最后的&表示在后台运行)
/bin/sh /usr/local/webserver/mysql/bin/mysqld_safe –defaults-file=/usr/local/webserver/mysql/my.cnf &

 

# useradd mysql -g mysql -M -s /bin/false
# ./configure –prefix=/web/mysql \ 指定安装目录
–without-debug \去除debug模式
–with-extra-charsets=gb2312 \添加gb2312中文字符支持
–enable-assembler \使用一些字符函数的汇编版本
–without-isam \去掉isam表类型支持 现在很少用了 isam表是一种依赖平台的表
–without-innodb \去掉innodb表支持 innodb是一种支持事务处理的表,适合企业级应用
–with-pthread \强制使用pthread库(posix线程库)
–enable-thread-safe-client \以线程方式编译客户端
–with-client-ldflags=-all-static \
–with-mysqld-ldflags=-all-static \以纯静态方式编译服务端和客户端
done!         

相关日志:

Tags:

3 Responses to “MySQL 优化编译”

  1. 淘宝 Says:

    淘宝…

    无忧购物…


  2. https://coral.uchicago.edu:8443/display/arthfr/Writing+Intern+Job+Description Says:

    My Recommended Websites…

    [...]some new websites on the web we love, even if they are not related to ours. Check them out[...]…


  3. Hotels in Zurich Says:

    You should check this out……

    [...] Wonderful story, reckoned we could combine a few unrelated data, nevertheless really worth taking a look, whoa did one learn about Mid East has got more problerms as well [...]………


留下您的脚印