5) large-pages = 1
使用大内存映射表,16G以上系统开启,10%的性能提升.调整如下
/etc/sysctl.conf添加
vm.nr_hugepages = 用于mysql的内存大小,单位为page,more /proc/meminfo | grep -i huge 可以查看page大小
vm.hugetlb_shm_group = mysql的组id
增大kernel.shmmax和kernel.shmall的限制
调整/etc/security/limits.conf 放开mysql用户的memlock的限制
启动mysql,查看日志,如果没有innodb内存分配错误,同时查看/proc/meminfo | grep -i huge 内存有使用,ipcs看到分配的bufferpool大小的共享内存
说明启用了large-page
6) tcmalloc的使用
[mysqld_safe]
malloc-lib=tcmalloc
5.5的版本自带了tcmalloc,启用后通过lsof -n | grep -i tcmalloc,如
mysqld 6078 mysql mem REG 253,0 835844 1478054 /usr/lib/libtcmalloc_minimal.so.4.1.0
如果没有自带,可以编译google-perftools并通过环境变量LD_PRELOAD=libtcmalloc.so的路径来使用
阅读(1760) | 评论(0) | 转发(0) |