当前位置:Gxlcms > 数据库问题 > 安装tcmalloc内存控制模块,并配置mysql使用

安装tcmalloc内存控制模块,并配置mysql使用

时间:2021-07-01 10:21:17 帮助过:23人阅读

先安装相关运行库,因为是用c++写的,需要make,还有一个运行环境libunwind

  1. yum -y install gcc make gcc-c++ libunwind

然后下载并安装google-perftools

  1. #下载源码包
  2. wget https://github.com/gperftools/gperftools/releases/download/gperftools-2.5/gperftools-2.5.tar.gz
  3. #解压源码包
  4. tar xf gperftools-2.5.tar.gz
  5. #开始编译安装
  6. ./confighre
  7. make
  8. make install
  9. #搜索一下,找到安装好的相关C库文件
  10. find / -name libtcmalloc.so
  11. /usr/local/lib/libtcmalloc.so
  12. /opt/gperftools-2.5/.libs/libtcmalloc.so
  13. #创建lib库软连接,这样就不需要用ldconfig了
  14. ln -sf /usr/local/lib/* /usr/lib/
  15. #完成
  16. ll /usr/lib/libtcmalloc.so
  17. lrwxrwxrwx. 1 root root 29 Jan 23 12:05 /usr/lib/libtcmalloc.so -> /usr/local/lib/libtcmalloc.so

安装完成,就等程序调用了,懂开发的可以测试一下,我这里直接用mysql调用.

===============================================

因为这个软件略难找,这个链接也不知道什么时候失效,我上传到51cto下载了

http://down.51cto.com/data/2437899

===============================================


配置mysql使用

使用mysql调用这个模块,有两种方法,一种就是加载到mysqld_safe启动,另一种就是加载的配置文件.不过,都要重启mysql程序才能生效,其他程序亦然.

没有项目加载的话,下面这条命令是没有返回的

  1. lsof -n | grep tcmalloc

然后,加到mysql的配置文件my.cnf

  1. #打开mysql配置文件,添加下面两行
  2. vim /usr/local/mysql/my.cnf
  3.     .
  4.     .
  5.     .
  6. [mysqld_safe]
  7. malloc-lib=tcmalloc
  8.     .
  9.     .
  10.     .
  11. #重启mysql
  12. /etc/init.d/mysql restart

注意:如果是正常安装并加载libtcmalloc.so的话,是不会报错的,重启将直接生效.如果有报错,则需要研究一下哪里做错了,或者尝试重新安装.

现在来看看使用上没有

  1. lsof -n | grep tcmalloc
  2. mysqld     3665         mysql  mem       REG              253,0    1050408  100663894 /usr/local/lib/libtcmalloc_minimal.so.4.3.0
  3. mysqld     3665  3666   mysql  mem       REG              253,0    1050408  100663894 /usr/local/lib/libtcmalloc_minimal.so.4.3.0
  4. mysqld     3665  3669   mysql  mem       REG              253,0    1050408  100663894 /usr/local/lib/libtcmalloc_minimal.so.4.3.0

可以明确看到,mysql已经加载上这个模块了,那就可以用了



安装tcmalloc内存控制模块,并配置mysql使用

标签:bsp   style   min   其他   tool   gcc   lease   51cto   /etc   

人气教程排行