MySQL性能优化
2007-11-13 11:04:32 来源:WEB开发网编译时考虑所有可用的选项也是极其重要的。很可能某些编译器的默认选项值不能符合要求,或者,为了满足应用的特定需求,我们需要指定一些特殊的编译选项。正如MySQL文档所指出的,只要采用了更好的编译器或者使用更合理的编译选项,应用性能的提高程度可以达到10-30%。
既然如此,编译时具体应该注意哪些问题才能让MySQL数据库运行得更快呢?
▲使用pgcc编译器
如果系统使用的是奔腾处理器,那么pgcc(PentiumGCC)正是为这些系统下运行的程序提供的专用编译器。pgcc是gcc编译器(http://www.gnu.org/software/gcc/)的奔腾优化版,用pgcc编译MySQL代码可以让整体性能提高10%以上!关于pgcc的更多信息,请参见http://www.goof.com/pcg/。当然,如果系统使用的不是奔腾处理器,采用这种方法提高MySQL的运行速度就不合适了,因为正如其名字所示,pgcc是专门为奔腾系统提供的。
▲把mysqld编译成静态模式
以不带共享库的形式编译mysqld同样可以提高性能。在配置行加入下面这个选项可以将mysqld编译成静态模式:
%>./configure-with-mysqld-ldflags=-all-static[--其他配置选项]
▲配置示例
下面的配置命令经常用于提高MySQL的性能:
%>CFLAGS="-O6-mpentiumpro-fomit-frame-pointer"CXX=gccCXXFLAGS="-O6
-mpentiumpro-fomit-frame-pointer-felide-constructors-fno-exceptions-fno-rtti"
./configure--prefix=/usr/local--enable-assembler--with-mysqld-ldflags=-all-static
--disable-shared
详细解释每个gcc选项的作用已经超出了本文的范围,请访问gcc的说明文档了解这些信息(http://gcc.gnu.org/)。注意不要拘泥于这个例子,请在命令行执行mangcc仔细了解每一个gcc选项的含义。
更多精彩
赞助商链接