mysql安装perftools及在x64上安装错误解决

TCMalloc (google-perftools) 是用于优化C++写的多线程应用,比glibc 2.3的malloc快。这个模块可以用来让MySQL在高并发下内存占用更加稳定。

下载二个软件地址:

google-perftools: http://code.google.com/p/google-perftools/

libunwind:http://download.savannah.gnu.org/releases/libunwind/

安装步骤:

1.64位操作系统请先安装 libunwind库,32位操作系统不要安装。libunwind库为基于64位CPU和操作系统的程序提供了基本的堆栈辗转开解功能,其中包括用于输出堆栈跟踪的API、用于以编程方式辗转开解堆栈的API以及支持C++异常处理机制的API。
#tar zxvf libunwind-0.9.tar.gz
#cd libunwind-0.99

#./configure
#make
#make install

2.安装google-perftools:
#tar zxvf google-perftools-1.6.tar.gz

#cd google-perftools-1.6

#./configure
#make
#make install

3.运行以下二行命令

echo "/usr/local/lib" > /etc/ld.so.conf.d/usr_local_lib.conf
/sbin/ldconfig

4.修改MySQL启动脚本(根据你的MySQL安装位置而定):

vi /usr/local/mysql/bin/mysqld_safe

在# executing mysqld_safe的下一行,加上:
export LD_PRELOAD=/usr/local/lib/libtcmalloc.so

保存后退出,然后重启MySQL服务器。

 

5.使用验证lsof命令查看tcmalloc是否起效:
如lsof没有装,可yum安装
/usr/sbin/lsof -n | grep tcmalloc
如果发现以下信息,说明tcmalloc已经起效:
mysqld    10847   mysql  mem       REG        8,5  1203756   20484960 /usr/local/lib/libtcmalloc.so.0.0.0
 
上面是网上的文章 ,抄来一下,关于在x64上安装失败的问题,本人也经历过,按照上面的方法安装,先安装 libunwind,然后再安装 google-perftools。在安装 google-perftools时,make 出现
make: *** [stacktrace.lo] Error 1 错误,研究了半天,终于找到了解决办法。
方法如下:
在安装 google-perftools-1.6.tar.gz 时解决过后,./configure时加上 --enable-frame-pointers 参数,然后make ;make install  正常安装。。。

你可能感兴趣的:(mysql,数据库,Google,perftools,stacktrace.lo)