1.确认支持huge page
grep -i page /proc/meminfo
2.修改预分配的hugepages大小
sysctl -w vm.nr_hugepages=18000#这里会卡一下grep -i huge /proc/meminfo
3.查看mysql用户的组信息
id mysqluid=502(mysql) gid=501(dba) groups=501(dba)
4.配置使用大页内存的用户组
sysctl -w vm.hugetlb_shm_group=501
5.修改ulimit
vi /etc/security/limits.conf@mysql soft memlock unlimited@mysql hard memlock unlimited
6.修改/etc/sysconfig.conf
# Increase the amount of shmem allowed per segment# This depends upon your memory, remember yourkernel.shmmax = 68719476736# Increase total amount of shared memory.kernel.shmall = 4294967296
7.修改my.cnf
[mysqld]large_pages
8.监测TLB miss的情况
sudo perf stat -e dTLB-load-misses -p `pidof /u01/mysql/bin/mysqld`
9.监测内存页面交换
sar -B 10
—-
开启大页内存的好处:
1.减少内存置换
2.减少TLB miss次数
3.减少swap
(转)MySQL启用hugepage及相关监控
转载
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
(转)hugepage介绍
一、相关概念Hugepage/Big page:
共享内存 oracle sql -
【转】mysql索引相关
内容不深,不过对普通的开发工程师来说已经足够了
mysql mysql -
[转帖]总结:Springboot监控Actuator相关
一、介绍 由于项目中使用的仍然是比较老旧的1.5.6版本,所以本文是基于此版本进行描述。 二、Act
spring 应用程序 Endpoint -
MySQL使用hugepagemysql html linux 共享内存 .net
-
mysql超大数据量表怎么查询
首先我们说一下大查询会不会把内存打爆?比如说主机内存有5g,但是我们一个大查询的数据有10g,这样会不会把内存打爆呢?答案:不会为什么?因为mysql读取数据是采取边读边发的策略select * from t1这条语句的流程是这样的 1.读取数据放入net_buffer中,net_buffer大小是由net_buffer_length控制2.net_buffer放满了以后
mysql超大数据量表怎么查询 .net 逐行读取大文本文件 .net函数查询 查询本地内存的栈大小 数据