mysql针对较大page,进行锁定内存memlock,不使用swap空间

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql针对较大page,进行锁定内存memlock,不使用swap空间相关的知识,希望对你有一定的参考价值。

HugePage简介

HugePage技术是Linux在内核2.6中增加的一个特性,基本原理是:使用较大的Page实现对较大内存的访问!

这个技术可以在Linux内核2.6及其以上的版本,32位和64位都支持!
它的大小范伟是2MB到256MB,具体大小依赖于内核版本和服务器硬件架构!
HugePage的优势:

1.增加TLB的命中率;
2.Page是被锁定在内存中,降低内存交换;
3.锁定内存,降低内存释放与占用产生的性能降低;
4.提高内存的性能,降低CPU负载。

注意:在mysql中HugePages只被InnoDB所支持 
MySQL中HugePages设置
正确设置,shmmax ,shmall 等参数
1.设置max locked memory
#vi /etc/security/limits.conf
mysql            hard    memlock        unlimited  
mysql            soft    memlock         unlimited 
2.将mysql用户所属组添加到系统内核中
# id mysql
uid=501(mysql) gid=501(dba) groups=501(dba) 
#echo 501 > /proc/sys/vm/hugetlb_shm_group
3. 配置 my.cnf
 [mysqld]  
large-pages  
[mysqld]
large-pages
4.启动mysqld


以上是关于mysql针对较大page,进行锁定内存memlock,不使用swap空间的主要内容,如果未能解决你的问题,请参考以下文章

mysql锁

mysql锁

MySQL占用内存过高怎么办

MySQL数据库锁定机制

MySQL数据库锁

MySQL锁定机制简介