CentOS7 禁用Transparent Huge Pages的实现方法

2020-06-17 06:59:30易采站长站整理

CentOS7 禁用Transparent Huge Pages

自CentOS6版本开始引入了Transparent Huge Pages(THP),从CentOS7版本开始,该特性默认就会启用。尽管THP的本意是为提升内存的性能,不过某些数据库厂商还是建议直接关闭THP(比如说ORACLE、MariaDB、MongoDB等),否则可能会导致性能出现下降。

首先检查THP的启用状态:


[root@localhost ~]# cat /sys/kernel/mm/transparent_hugepage/defrag
[always] madvise never
[root@localhost ~]# cat /sys/kernel/mm/transparent_hugepage/enabled
[always] madvise never

这个状态就说明都是启用的。

我们这个时候当然可以逐个修改上述两文件,来禁用THP,但要想一劳永逸的令其永久生效,还是参考下列的步骤。

编辑rc.local文件:

[root@localhost ~]# vim /etc/rc.d/rc.local

增加下列内容:


if test -f /sys/kernel/mm/transparent_hugepage/enabled; then
echo never > /sys/kernel/mm/transparent_hugepage/enabled
fi
if test -f /sys/kernel/mm/transparent_hugepage/defrag; then
echo never > /sys/kernel/mm/transparent_hugepage/defrag
fi

保存退出,然后赋予rc.local文件执行权限:

[root@localhost ~]# chmod +x /etc/rc.d/rc.local

最后重启系统,以后再检查THP应该就是被禁用了


[root@localhost ~]# cat /sys/kernel/mm/transparent_hugepage/enabled
always madvise [never][root@localhost ~]# cat /sys/kernel/mm/transparent_hugepage/defrag
always madvise [never]

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

您可能感兴趣的文章:解析spring-boot-starter-parent简介vue组件 $children,$refs,$parent的使用详解bootstrap折叠调用collapse()后data-parent不生效的快速解决办法PHP面向对象学习之parent::关键字PHP中子类重载父类的方法【parent::方法名】php实现parent调用父类的构造方法与被覆写的方法getcwd cannot access parent directories错误解决方法jQuery中parent()方法用法实例jQuery的:parent选择器定义和用法Maven最佳实践之一个好的parent依赖基础