Oracle内存管理技术
1.Oracle内存管理技术
- 11g 新特性: AMM(Automatic Memory Management)
- 10g 新特性: ASMM(Automatic Shared Memory Management)
Tips:
- 即便启动了AMM,仍然可以将相关的内存初始化参数设置为下限值,防止Oracle自动调整为低值或零值。
- Oracle11g 建议使用AMM配置新数据库,然后监视总体内存分配的效果,后续可以将数据库切换到ASMM,以便更精准的控制SGA的总大小。
2.配置自动内存管理(AMM)
-- memory_max_target是静态参数,是memory_target的上限,修改需要重启库
SQL> alter system set memory_max_target = 3G scope=spfile;
SQL> shutdown immediate
SQL> startup
-- 配置AMM,memory_target值
SQL> alter system set memory_target = 2G;
-- 为更好的发挥AMM调整作用,设置下面参数为零值
SQL> alter system set sga_target = 0;
SQL> alter system set pga_aggregate_target = 0;
3.监视自动内存管理(AMM)
## 3.1 通过EM查看 ##
EM主页:服务器(Server) -> 数据库配置(Database Configuration) -> 内存指导(Memory Advisors)
## 3.2 直接查询动态性能视图 ##
```
SQL> select * from v$memory_target_advice order by memory_size;
MEMORY_SIZE MEMORY_SIZE_FACTOR ESTD_DB_TIME ESTD_DB_TIME_FACTOR VERSION
768 .25 402 1 1
1536 .5 402 1 1
2304 .75 402 1 1
3072 1 402 1 1
3840 1.25 402 1 1
4608 1.5 402 1 1
5376 1.75 402 1 1
6144 2 402 1 1
8 rows selected.
<h1 id="4">4.配置自动共享内存管理(ASMM)</h1>
## 4.1 从手动内存管理切换到ASMM ##
-- 从手动内存管理切换到ASMM
alter system set sga_target = 1G;
-- 为更好的发挥ASMM作用,设置下面参数为零值
SQL> alter system set shared_pool_size = 0;
SQL> alter system set db_cache_size = 0;
SQL> alter system set java_pool_size = 0;
SQL> alter system set large_pool_size = 0;
SQL> alter system set streams_pool_size = 0;
## 4.2 从AMM切换到ASMM ##
-- 从AMM切换到ASMM,会根据当前SGA内存使用情况自动设置SGA_TARGET
alter system set memory_target = 0;
## 4.3 禁用ASMM ##
--下面命令使得所有初始化参数被设置为当前自动调整的值,禁用ASMM
alter system set sga_target = 0;
## 4.4 ASMM需要手工调整下面的参数 ##
ASMM只可以自动调整4.1中设置为零值的5个参数大小,而剩下的需要手工调整
-- DB_KEEP_CACHE_SIZE
-- DB_RECYCLE_CACHE_SIZE
-- DB_nK_CACHE_SIZE
-- LOG_BUFFER
手工设置这些参数值,会从SGA_TRAGET指定的内存中减去这些内存量。
<h1 id="5">5.配置自动PGA内存管理</h1>
PGA_AGGREGATE_TARGET的值可以由AMM推出来,也可以明确设置。
--PGA设置起点
Oracle单实例可用内存设置为占机器物理内存的80%
OLTP(在线事务处理):PGA占可用内存的20%
DSS(查询使用大量内存):PGA占可用内存的50%~70%
--查询pga相关动态视图
select * from v$pgastat;
select PGA_USED_MEM, PGA_ALLOC_MEM, PGA_FREEABLE_MEM, PGA_MAX_MEM from v$process;
更多PGA相关可参考:《[相克军_Oracle体系_随堂笔记007-PGA](http://www.cnblogs.com/jyzhao/p/3819372.html)》
<h1 id="6">Reference</h1>
- OCP 认证考试指南 (1Z0-053)[M]. 清华大学出版社, 2010.
Oracle内存管理技术的更多相关文章
- iOS开发ARC内存管理技术要点
本文来源于我个人的ARC学习笔记,旨在通过简明扼要的方式总结出iOS开发中ARC(Automatic Reference Counting,自动引用计数)内存管理技术的要点,所以不会涉及全部细节.这篇 ...
- (转)iOS开发ARC内存管理技术要点
转自:http://www.cnblogs.com/flyFreeZn/p/4264220.html 本文来源于我个人的ARC学习笔记,旨在通过简明扼要的方式总结出iOS开发中ARC(Automati ...
- iOS开发ARC机制下的内存管理技术要点
转载一篇: iOS开发ARC内存管理技术要点.ARC内存管理原则总结.iOS ARC内存管理总结 ARC内存管理机制 (一)ARC的判断准则: 只要没有任何一个强指针指向该对象,该对象就会被释放. ( ...
- 这篇关于Oracle内存管理方式的介绍太棒了!我必须要转发,很全面。哈哈~
"Oracle内存管理可分为两大类,自动内存管理和手动内存管理.其中手动内存管理又可分为自动共享内存管理,手动共享内存管理,自动PGA内存管理以及手动PGA内存管理.本文会简单的介绍不同的内 ...
- Oracle 内存管理
--内存分配建库时可以先分配系统内存的50%-80%给Oracle,后期根据业务再进行调整.SGA.PGA分配比例:OLTP:SGA %80 , PGA %20OLAP:SGA %50 , PGA % ...
- Paddle源码之内存管理技术
前言 在深度学习模型训练中,每次迭代过程中都涉及到Tensor的创建和销毁,伴随着的是内存的频繁 malloc和free操作,可能对模型训练带来不必要的 overhead. 在主流的深度学习框架中,会 ...
- [转载]linux段页式内存管理技术
原始博客地址: http://blog.csdn.net/qq_26626709/article/details/52742470 一.概述 1.虚拟地址空间 内存是通过指针寻址的,因而CPU的字长决 ...
- Oracle内存管理(之二)
[深入解析--eygle] 学习笔记 1.2.2 UGA和CGA UGA(用户全局区)由用户会话数据.游标状态和索引区组成.在共享server模式下,一个共享服务进程被多个用户进程共享,此时UGA是S ...
- Oracle内存管理(之四)
[深入解析--eygle]学习笔记 1.3 SGA管理 SGA指系统全局区(System Global Area),是一块用于载入数据.对象并保存执行状态和数据库控制信息的一块内存区域,在数据库实例启 ...
随机推荐
- linux开启FTP以及添加用户配置权限,只允许访问自身目录,不能跳转根目录
1.切换到root用户 2.查看是否安装vsftp,我这个是已经安装的. [root@localhost vsftpd]# rpm -qa |grep vsftpd vsftpd--.el7_2.x8 ...
- Intellij IDEA 常用快捷键
[常规] Ctrl+Shift + Enter,语句完成 "!",否定完成,输入表达式时按 "!"键 Ctrl+E,最近的文件 Ctrl+Shift+E,最近更 ...
- jQuery模仿淘宝商品评价
最近做项目要做个商品评价的功能,我直接就跑到淘宝那里去研究了,可看着晕晕的,还不知道他是怎么做的,于是把图抠了下来,自己写了一个,接下来就展示一下我是怎么做的,大家有不同的实现方法可要记得分享一下呀. ...
- 培训SQLServer 嵌套事务PPT分享
培训SQLServer 嵌套事务PPT分享 下载地址 http://files.cnblogs.com/files/lyhabc/SQLServer%E5%B5%8C%E5%A5%97%E4%BA%8 ...
- TaintDroid剖析之Native方法级污点跟踪分析
1.Native方法的污点传播 在前两篇文章中我们详细分析了TaintDroid对DVM栈帧的修改,以及它是如何在修改之后的栈帧中实现DVM变量级污点跟踪的.现在我们继续分析其第二个粒度的污点跟踪—— ...
- 小菜学习设计模式(五)—控制反转(Ioc)
写在前面 设计模式目录: 小菜学习设计模式(一)—模板方法(Template)模式 小菜学习设计模式(二)—单例(Singleton)模式 小菜学习设计模式(三)—工厂方法(Factory Metho ...
- [Voice communications] 声音的滤波
本系列文章主要是介绍 Web Audio API 的相关知识,以及 web语音通信 中会遇到的一些问题,阐述可能存在错误,还请多多斧正! 通过设备获取音频流会不可避免的渗入一些杂音,这些杂音可能来自你 ...
- 数据库基础,表及SQL语句
数据库基础及T-SQL语句 字符类型: int 整型 float 小数 double 小数 varchar(20) 字符串 bit 布尔型数据 datetime 日期时间类型 text 长文本 (以下 ...
- iOS开发——高级技术&本地化与国际化详解
本地化与国际化详解 效果如下: 英语: 中文: 具体实现如下: ...
- defered,promise回顾
defered,promise回顾 http://www.ruanyifeng.com/blog/2011/08/a_detailed_explanation_of_jquery_deferred_o ...