Oracle在使用Linux大页时需要注意一些细节
1.需要使用SGA内存管理,或者回归9i方式,各个pool手动管理
2.使用memory_target方式管理内存时系统设置的大页无法被oracle使用
3.oracle是否利用了大页,可以通过/proc/meminfo文件查看,同时在alert日志启动时也会记录
4.会提升OS系统的性能,减小huge table页表的大小,减少系统开销
5.有些linux下的oracle在业务繁忙系统响应很慢,就是因为没有合理的使用大页,可以配合OSW数据分析
Linux设置大页方法如下:
1. 关闭所有 oracle 实例
建议在修改大页时关闭数据库实例,也可以节点间分别操作
srvctl stop database -d orcl
2.使用 root 用户在两节点分别修改 /etc/security/limits.conf 文件, 最后添加两行:
oracle hard memlock unlimited
oracle soft memlock unlimited
3.分配 hugepages 内存,使用 root 用户两节点分别修改/etc/sysctl.conf添加如下内容:
大页单位一般是2M,此参数代表数量,本次举例为256G
vm.nr_hugepages = 131074
注:通常设置多少大页使用如下公式计算,除以2代表Hugepage管理下每个大页为2M。
select ceil(SGA_MAX_SIZE(G)*1024/2)+2 from dual;
4. 使用 root 用户执行 sysctl -p 使更生效,并监控其空间分配情况。
sysctl -p
grep Huge /proc/meminfo
5.启动 RAC 集群中所有 Oracle instance
srvctl start database -d orcl
更多技术细节可以参考技术大牛老熊的文章,受益匪浅
https://mp.weixin.qq.com/s/40W-UL7OeSNsdgsUcl5TDg
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/26964624/viewspace-2652864/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/26964624/viewspace-2652864/