一、
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