选择binary包进行编译安装时,configure选用的参数对数据库的性能的好坏起到较为关键的影响
./configure --prefix=/usr/local/mysql \ 指定安装目录
--without-debug \去除debug模式
--with-extra-charsets=gb2312 \添加gb2312中文字符支持
--enable-assembler \使用一些字符函数的汇编版本
--without-isam \去掉isam表类型支持 现在很少用了 isam表是一种依赖平台的表
--without-innodb \去掉innodb表支持 innodb是一种支持事务处理的表,适合企业级应用
--enable-thread-safe-client \以线程方式编译客户端
--with-client-ldflags=-all-static \
--with-mysqld-ldflags=-all-static \以纯静态方式编译服务端和客户端
这里需要补充是,将mysqld编译成静态执行文件而无需共享库也能获得更好的性能
但在Solair平台上:
Solaris不提供所有系统库的静态版本(libpthreads和libdl),所以你不能用--static编译MySQL。如果你尝试这样做,你将得到错误:
ld: fatal: library -ldl: not found
(MYSQL手册上如是说)