本帖最后由 东东堂 于 2013-11-16 12:23 编辑

AMM是分配内存的方式是在/dev/shm创文件的方式,每个文件大小为granule大小.这种方式和使用huge page的方式

不兼容,所以使用huge page必须要禁掉amm.而使用asmm的方式,是使用传统的共享内存方式.

The Automatic Memory Management (AMM) and HugePages are not compatible.

With AMM the entire SGA memory is allocated by creating files under /dev/shm.

When Oracle Database allocates SGA that way HugePages are not reserved.

You must disable AMM on Oracle Database 11g to use HugePages.

在以前使用huge pages时,需要定义db_block_buffers来定义cache buffer使用huge page的数量.其他的内存组件是不能使用

huge page的

现在新增加一个参数,use_large_pages,默认为true,oracle数据库在启动时,先会使用在os层面定义好的huge page数量

然后再加上其他的内存,比如现在sga_target=定义了1500M,vm.nr_hugepages=200(2MB),会先使用这个200M的huge page,

再加上其他定义的1100M,这样就避免了只有db_block_buffers使用huge page的情况.

[root@o12c dbs]# cat /etc/sysctl.conf | grep vm

vm.nr_hugepages=40

[root@o12c dbs]# cat /etc/security/limits.conf | grep memlock  --要大于hugepage的size

#        - memlock - max locked-in-memory address space (KB)

oracle soft memlock 5000000000

oracle hard memlock 5000000000

SQL> show parameter use_large_pages;

NAME                                 TYPE        VALUE

------------------------------------ ----------- ------------------------------

use_large_pages                      string      TRUE

这样实例在启动时,会用光所有可用的hugepage,不足的部分再按正常的内存去分配.

Wed Nov 13 04:01:36 2013

************************ Large Pages Information *******************

Wed Nov 13 04:01:36 2013

Per process system memlock (soft) limit = 4768 GB

Wed Nov 13 04:01:36 2013

Total System Global Area in large pages = 78 MB (9%)

Wed Nov 13 04:01:36 2013

Large pages used by this instance: 39 (78 MB)

Wed Nov 13 04:01:36 2013

Large pages unused system wide = 1 (2048 KB)

Wed Nov 13 04:01:36 2013

Large pages configured system wide = 40 (80 MB)

Wed Nov 13 04:01:36 2013

Large page size = 2048 KB

Wed Nov 13 04:01:36 2013

In Oracle Database 11g Release 2 (11.2.0.3), Oracle allocates as much of the SGA as it can in large pages,

and if it runs out, it will allocate the rest of the SGA using regular sized pages.

This can cause the instance to create additional shared memory segments for the SGA, but the total SGA size will be unchanged.

In this supported mixed page mode allocation, the database will exhaust the available large pages before switching to regular sized pages.

在使用AMM的时候,尽可能的给SGA_TARGET设置一个边界,防止PGA抢占更多内存,以带来SGA不足,引发更大的问题.

而在AMM的时候,PGA在/dev/shm中大小全为0

[root@test oracle]# ls -l /dev/shm | grep -i test | awk  '{print $5,$9}' | grep  ^0 | wc -l

172

SQL> select component,current_size from v$memory_dynamic_components where component='PGA Target';

COMPONENT                                                        CURRENT_SIZE

---------------------------------------------------------------- ------------

PGA Target                                                         5771362304

SQL> select 172*32*1024*1024 from dual;  --32*1024*1024为granule size

172*32*1024*1024

----------------

5771362304

oracle12c amm,oracle 11gR2和12C中引入AMM和hugepage的使用.相关推荐

  1. oracle12c amm,oracle 11gR2和12C中引入AMM和hugepage的使用

    oracle 11gR2和12C中引入AMM和hugepage的使用. AMM是分配内存的方式是在/dev/shm创文件的方式,每个文件大小为granule大小.这种方式和使用huge page的方式 ...

  2. 用PXE方法从裸机批量推Oracle 11gR2 RAC环境

    9月29日,由中科院高级工程师唐波在"DBA+福州群"进行了一次关于用PXE方法从裸机批量推Oracle 11gR2 RAC环境的线上主题分享.小编特别整理出其中精华内容,供大家学 ...

  3. oracle12c racpdb,Oracle 12C R2的CDB与PDB简单管理操作

    Oracle 12C引入了CDB与PDB的新特性,在ORACLE 12C数据库引入的多租用户环境(Multitenant Environment)中,允许一个数据库容器(CDB)承载多个可插拔数据库( ...

  4. oracle 11g r2 rac中节点时间不同步,Oracle 11gR2 安装RAC错误之--时钟不同步

    系统环境: 操作系统:RedHat EL5 Cluster: Oracle GI(Grid Infrastructure) Oracle: Oracle 11.2.0.1.0 如图所示:RAC 系统架 ...

  5. Oracle 12c中导入Oracle 11g的数据

    我们直接说干的: 1.在github上下Oracle 11g所有示例用户的sql脚本文件(地址失效请评论区留言) https://github.com/oracle/db-sample-schemas ...

  6. Oracle 12c中增强的PL/SQL功能

    英文链接:http://www.oracle.com/technetwork/issue-archive/2013/13-sep/o53plsql-1999801.html Oracle 12c增强了 ...

  7. Oracle GoldenGate 12c中的协同交付(Coordinated Delivery)

    OGG 12c中,并行交付有2种模式:集成交付.协同交付.不过集成交付只能针对目标端是oracle数据库(有版本要求)使用,而协同交付则可以在非oracle数据库上使用. 先来看2个问题, l 为什么 ...

  8. maven中引入oracle驱动报错Missing artifact com.oracle:ojdbc14:jar:10.2.0.4.0

    maven中引入oracle驱动报错Missing artifact com.oracle:ojdbc14:jar:10.2.0.4.0 问题:引入依赖之后会报错.在maven中央库中查找ojdbc, ...

  9. centOS6.5中静默安装oracle 11gR2

    近日公司租用虚机,需要在虚机上安装oracle11gR2,由于先前从未使用过linux系统,在网上查了一些方法进行安装最后都安装失败,最后经多次试验才发现安装不成功的多数问题都是集中在包或者是权限上, ...

最新文章

  1. awk处理文件内容格式
  2. python在bim中的应用_Revit元素类别——Dynamo Python系列教程(六)
  3. Struts2漏洞为互联网带来严重安全风险
  4. 【Oracle】多表连接查询详解
  5. 中国医科大学计算机应用基础本科在线作业,中国医科大学《计算机应用基础(本科)》在线作业.doc...
  6. 引用第三方高德地图接口---使用js脚本进行开发地图定位的步骤
  7. SAP UI5 bindProperty的实现
  8. 全网最好懂的Spring AOP原理
  9. Myeclipse学习总结(7)——Eclipse插件之Maven配置及问题解析
  10. 进制转换 pdf_浏览器中的二进制以及相关转换
  11. 深入分析windows和Linux动态链接库的应用异同[转]
  12. 使用人人开源遇到的bug
  13. 推荐子龙山人的emacs的教程
  14. Latex + IEEEtran模板 + 样例 + 数学符号表
  15. 【工具】SMART原则的分析举例注意事项
  16. u盘chk文件恢复图文教程
  17. 游戏统计中一些常用的专业 术语和计算公式
  18. 吃大闸蟹 非得阳澄湖吗?
  19. Xcode自定义代码块
  20. 如何将代码上传到gitee

热门文章

  1. RISC-CPU设计(一):基本概念
  2. 微信小程序表单含多图上传
  3. 什么是跨境电商ERP?
  4. python【PyQt5】的环境搭建和使用(全网最全)其一
  5. 利用区块链技术助力中国影视产业的发展升级
  6. 写一封信给N年前的自己
  7. Git发生错误C:/Program Files/Git/mingw64/ssl/certs/ca-bundle.crt
  8. python获取系统环境变量|os.environ|os.putenv|cmd添加环境变量
  9. 必应API接口node.js版 - 极客玩家大白
  10. autocad网络服务器如何安装许可证,使用网络许可选项文件的步骤