在Linux操作系统下,page size默认是4K大小,如果使用HugePages,默认是2M大小。
下面介绍,linux操作系统下,mysql如何配置使用大页面。
1、在终端中执行id mysql查看mysql的id号
[root@dbserver /]#id mysql
uid=27(mysql) gid=27(mysql) 组=27(msyql)
2、编辑/etc/rc.local,添加以下内容:
echo 27 > /proc/sys/vm/hugetlb_shm_group
echo 1 > /proc/sys/vm/overcommit_memory
echo 1000 > /proc/sys/vm/nr_hugepages
mount -t hugetlbfs hugetlbfs /mnt/hugepages
chmod 777 /mnt/hugepages
保存退出后,执行cd /etc,然后执行./rc.local,使得以上设置生效。
注:echo 27 > /proc/sys/vm/hugetlb_shm_group 将mysql用户所属组添加到系统内核中
echo 1000 > /proc/sys/vm/nr_hugepages 设置大页数量、每页通常2M、1000个就是2000M、系统要有足够的内存待分配
3、 确认配置情况
[root@dbserver /]# cat /proc/meminfo | grep -i huge
AnonHugePages: 382976 kB
HugePages_Total: 1000
HugePages_Free: 1000
HugePages_Rsvd: 0
HugePages_Surp: 0
Hugepagesize: 2048 kB
4、设置max locked memory
[root@dbserver /]#vim /etc/security/limits.conf
mysql hard memlock unlimited
mysql hard memlock unlimited
5、配置 my.cnf
[mysqld]
large-pages
6、启动mysqld服务,service mysqld start
7、查看hugepage使用情况
[root@dbserver /]# cat /proc/meminfo | grep -i huge
AnonHugePages: 382976 kB
HugePages_Total: 1000
HugePages_Free: 716
HugePages_Rsvd: 18
HugePages_Surp: 0
Hugepagesize: 2048 kB
阅读(725) | 评论(0) | 转发(0) |