默认的内存分配就是c的malloc 现在也出现许多优化的内存分配算法:
jemalloc and tcmalloc
从MySQL 5.5后支持声明内存储方法。
安装jemalloc
-
wget http://www.canonware.com/download/jemalloc/jemalloc-3.4.0.tar.bz2 tar xjf jemalloc-3.4.0.tar.bz2 cd jemalloc-3.4.0 ./configure --prefix=/usr/local/jemalloc --libdir=/usr/local/lib make && make install echo '/usr/local/lib' > /etc/ld.so.conf.d/local.conf ldconfig
[root@host-192-168-1-56 mysql]# cp /usr/local/lib/libjemalloc.so /usr/lib64/mysql/libjemalloc.so
mysql使用jemalloc
- 修改配置文件
-
[mysqld_safe]
malloc-lib=/usr/lib64/mysql/libjemalloc.so ###指定libjemalloc.so 即可
重启mysql检查是否生效
-
[root@host-192-168-1-56 mysql]# lsof -n | grep jemalloc
mysqld 6032 mysql mem REG 252,1 4781206 320288 /usr/lib64/mysql/libjemalloc.so
今天我与同事使用sysbench对jemalloc的前后进行了测试对比,总体提高了20%以上。
参考文档:
http://www.lai18.com/content/2397064.html
http://www.phperz.com/article/16/0801/234446.html
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/29096438/viewspace-2122906/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/29096438/viewspace-2122906/
本文介绍了如何使用jemalloc优化MySQL,包括安装jemalloc的步骤、配置MySQL使用jemalloc以及确认优化是否生效的方法。通过替换默认的内存分配器,可以提升MySQL的内存管理效率。
8454

被折叠的 条评论
为什么被折叠?



