一、 Hugepage
11g 的 AMM 和 HugePages 不兼容,但可以使用 ASMM
好处:
不需要内存页交换
减轻快表压力
减轻换页表的负载
配置
1 设置 memlock
/etc/security/limits.conf
如物理内存是 64GB ,可以设置为如下:
* soft memlock 60397977
* hard memlock 60397977
>DB 内存
< 物理内存
kernel.shmmax =60397977*1024
2 验证 memlock
ulimit -l
su - oracle
ulimit -l
3 禁用 AMM
alter system reset memory_target scope = spfile sid='*';
alter system reset memory_max_target scope =spfile sid='*';
4.vm.nr_hugepages 的建议值
cat /proc/meminfo
2048K 默认 2m 一个页
vi /etc/sysctl.conf
vm.nr_hugepages =30000 (60G/2m)
vm.nr_hugepages 大于 oracle 内存 小于物理内存
经验计算: (SGA+1G)/2M
不经验计算:不超过 85% 不能大于 memlock 不能小于 kernel.shmmax
我的方法:比物理内存低点 直接除 2 60G/2M =30720 页
注意保留内存问题
sysctl -p
重启数据库实例
5 查看参数
cat /proc/meminfo
alert log 里边
Large Pages Information
二、透明大页
oracle 建议关闭
红帽 6.5 之后已去除
查看是否使用
more /sys/kernel/mm/transparent_hugepage/enabled
cat /sys/kernel/mm/redhat_transparent_hugepage/enabled
grep AnonHugePages /proc/meminfo
当值大于 ,表示正在使用
如果不关闭 可能会在 ocssd.log 中报错
clssscMonitorThreads clssnmvKillBlockThread not scheduled for 7500 msecs
clssscMonitorThreads clssnmvWorkerThread not scheduled for 8030 msecs
影响 RAC 性能 不稳定
如何关闭:
建议 法 1. /etc/grub.conf 文件中添加
kernel 行后面加 transparent_hugepage=never
法 2. 在 /etc/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
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。