首页 / 数据库 / MySQL / CentOS下MySql 5.0.x的安装、优化及安全设置
CentOS下MySql 5.0.x的安装、优化及安全设置2010-06-14下载页面:http://dev.mysql.com/downloads/mysql/5.0.html#downloads到页面底部,找到Source downloads,这个是源码版本,下载第1个Tarballgroupadd mysql新建一个名为mysql的用户组useradd -g mysql mysql在mysql用户组下新建一个名为mysql的用户gunzip < mysql-VERSION.tar.gz | tar -xvf -解压下载到的.gz文件cd mysql-VERSION进入解压后的目录CFLAGS="-O3 -mcpu=pentium4" CXX=gcc CXXFLAGS="-O3 -march=pentium4 -felide-constructors -fno-exceptions -fno-rtti" ./configure --prefix=/home/mysql/ --without-debug --with-unix-socket-path=/home/mysql/tmp/mysql.sock --with-client-ldflags=-all-static --with-mysqld-ldflags=-all-static --enable-assembler --with-extra-charsets=gbk,gb2312,utf8 --without-innodb --without-isam --with-pthread --enable-thread-safe-client配置mysqlgcc的相关参数:-O3 -O-O1优化.对于大函数,优化编译占用稍微多的时间和相当大的内存.不使用`-O"选项时,编译器的目标是减少编译的开销,使编译结果能够调试.语句是独立的:如果在 两条语句之间用断点中止程序,你可以对任何变量重新赋值,或者在函数体内把程序计数器指到其他语句,以及从源程序中 精确地获取你期待的结果.不使用`-O"选项时,只有声明了register的变量才分配使用寄存器.编译结果比不用 `-O"选项的PCC要略逊一筹.使用了`-O"选项,编译器会试图减少目标码的大小和执行时间.如果指定了`-O"选项, `-fthread-jumps"和`-fdefer-pop"选项将被 打开.在有delay slot的机器上, `-fdelayed-branch"选项将被打开.在即使没有帧指针 (frame pointer)也支持调试的机器上, `-fomit-frame-pointer"选项将被打开.某些机器上 还可能会打开其他选项.-O2多优化一些.除了涉及空间和速度交换的优化选项,执行几乎所有的优化工作.例如不进行循环展开(loop unrolling)和函数内嵌(inlining).和-O选项比较,这个选项既增加了编译时间,也提高了生成代码的 运行效果.-O3优化的更多.除了打开-O2所做的一切,它还打开了-finline-functions选项.-O0不优化.