ORACLE 11G内存管理方式

SGA包含的组件:


组件名

说明

参数

buffer cache

存放从数据文件中读取的数据拷贝,所有用户之间是可以共享的

db_cache_size

db_keep_cache_size

db_recycle_cache_size

db_nk_cache_size


redo log buffer

redo数据

log_buffer

shared pool

存放库缓存和数据字典缓存,结果缓存,并行执行消息缓存,以及控制结构信息

shared_pool_size

shared_pool_reserved_size

result_cache_max_size*


large pool

共享模式下为会话分配内存,oracle xa,并行查询缓存,rman

large_pool_size

java pool

为java代码分配内存

java_pool_size

streams pool

用于oracle stream

streams_pool_size

1.AMM(Automatic Memory Management) – 统一管理SGA和PGA
 -memory_target
 -memory_max_target

2.ASSM(Automatic Shared Memory Management) – 自动管理SGA

自动管理SGA(buffer cache、shared pool、large pool、java pool、streams pool),使用$sga_target_advice进行调优

-sga_target:动态参数

-sga_max_size

在ASSM中以下部分不受管理:

-Log buffer

-Other buffer caches (such as KEEP, RECYCLE, and other nondefault block size)

-Fixed SGA and other internal allocations

SQL> select * from v$sga_target_advice;

  SGA_SIZE SGA_SIZE_FACTOR ESTD_DB_TIME ESTD_DB_TIME_FACTOR ESTD_PHYSICAL_READS
---------- --------------- ------------ ------------------- -------------------
      7264             .25      1187001              4.5075          3994550959
     10896            .375       453075              1.7205          1350811286
     14528              .5       276980              1.0518           585978929
     18160            .625       263602               1.001           525730243
     21792             .75       263339                   1           525730243
     25424            .875       263339                   1           525730243
     29056               1       263339                   1           525730243
     32688           1.125       263339                   1           525730243
     36320            1.25       263339                   1           525730243
     39952           1.375       263339                   1           525730243
     43584             1.5       263339                   1           525730243
     47216           1.625       263339                   1           525730243
     50848            1.75       218598               .8301           325059009
     54480           1.875       218492               .8297           325059009
     58112               2       218492               .8297           325059009

15 rows selected.

SQL>

3.manual shared memory management – 手动管理SGA
手工管理SGA的时候,需要手动设置以下参数的值:
 -db_cache_size
 -java_pool_size
 -large_pool_size
 -log_buffer
 -shared_pool_size
oracle在为这些组件分配内存的时候,以granules为单位。SGA<1G时,granules以4mb为单位;SGA>1G时,granules以16mb为单位

调优涉及的部分视图:
v$memory_resize_ops

SQL> select * from v$memory_resize_ops;

COMPONENT                      OPER_TYPE     OPER_MODE PARAMETER                      INITIAL_SIZE TARGET_SIZE FINAL_SIZE STATUS    START_TIM END_TIME
------------------------------ ------------- --------- ------------------------------ ------------ ----------- ---------- --------- --------- ---------
shared pool                    STATIC                  shared_pool_size                          0  6576668672 6576668672 COMPLETE  26-DEC-15 26-DEC-15
PGA Target                     STATIC                  pga_aggregate_target                      0  1.0201E+10 1.0201E+10 COMPLETE  26-DEC-15 26-DEC-15
java pool                      STATIC                  java_pool_size                            0   469762048  469762048 COMPLETE  26-DEC-15 26-DEC-15
streams pool                   STATIC                  streams_pool_size                         0   134217728  134217728 COMPLETE  26-DEC-15 26-DEC-15
SGA Target                     STATIC                  sga_target                                0  3.0467E+10 3.0467E+10 COMPLETE  26-DEC-15 26-DEC-15
DEFAULT buffer cache           INITIALIZING            db_cache_size                    2.2817E+10  2.2817E+10 2.2817E+10 COMPLETE  26-DEC-15 26-DEC-15
ASM Buffer Cache               STATIC                  db_cache_size                             0           0          0 COMPLETE  26-DEC-15 26-DEC-15
DEFAULT buffer cache           STATIC                  db_cache_size                             0  2.2817E+10 2.2817E+10 COMPLETE  26-DEC-15 26-DEC-15
DEFAULT 2K buffer cache        STATIC                  db_2k_cache_size                          0           0          0 COMPLETE  26-DEC-15 26-DEC-15
DEFAULT 4K buffer cache        STATIC                  db_4k_cache_size                          0           0          0 COMPLETE  26-DEC-15 26-DEC-15
DEFAULT 8K buffer cache        STATIC                  db_8k_cache_size                          0           0          0 COMPLETE  26-DEC-15 26-DEC-15
DEFAULT 16K buffer cache       STATIC                  db_16k_cache_size                         0           0          0 COMPLETE  26-DEC-15 26-DEC-15
DEFAULT 32K buffer cache       STATIC                  db_32k_cache_size                         0           0          0 COMPLETE  26-DEC-15 26-DEC-15
KEEP buffer cache              STATIC                  db_keep_cache_size                        0           0          0 COMPLETE  26-DEC-15 26-DEC-15
RECYCLE buffer cache           STATIC                  db_recycle_cache_size                     0           0          0 COMPLETE  26-DEC-15 26-DEC-15
large pool                     STATIC                  large_pool_size                           0   268435456  268435456 COMPLETE  26-DEC-15 26-DEC-15

16 rows selected.

SQL>

v$memory_target_advice
v$sga_current_resize_ops
v$sga_resize_ops

SQL> select * from v$sga_resize_ops;

COMPONENT                      OPER_TYPE     OPER_MODE PARAMETER                      INITIAL_SIZE TARGET_SIZE FINAL_SIZE STATUS    START_TIM END_TIME
------------------------------ ------------- --------- ------------------------------ ------------ ----------- ---------- --------- --------- ---------
shared pool                    STATIC                  shared_pool_size                          0  6576668672 6576668672 COMPLETE  26-DEC-15 26-DEC-15
large pool                     STATIC                  large_pool_size                           0   268435456  268435456 COMPLETE  26-DEC-15 26-DEC-15
java pool                      STATIC                  java_pool_size                            0   469762048  469762048 COMPLETE  26-DEC-15 26-DEC-15
streams pool                   STATIC                  streams_pool_size                         0   134217728  134217728 COMPLETE  26-DEC-15 26-DEC-15
DEFAULT buffer cache           INITIALIZING            db_cache_size                    2.2817E+10  2.2817E+10 2.2817E+10 COMPLETE  26-DEC-15 26-DEC-15
ASM Buffer Cache               STATIC                  db_cache_size                             0           0          0 COMPLETE  26-DEC-15 26-DEC-15
RECYCLE buffer cache           STATIC                  db_recycle_cache_size                     0           0          0 COMPLETE  26-DEC-15 26-DEC-15
DEFAULT 2K buffer cache        STATIC                  db_2k_cache_size                          0           0          0 COMPLETE  26-DEC-15 26-DEC-15
DEFAULT 4K buffer cache        STATIC                  db_4k_cache_size                          0           0          0 COMPLETE  26-DEC-15 26-DEC-15
DEFAULT 8K buffer cache        STATIC                  db_8k_cache_size                          0           0          0 COMPLETE  26-DEC-15 26-DEC-15
DEFAULT 16K buffer cache       STATIC                  db_16k_cache_size                         0           0          0 COMPLETE  26-DEC-15 26-DEC-15
DEFAULT 32K buffer cache       STATIC                  db_32k_cache_size                         0           0          0 COMPLETE  26-DEC-15 26-DEC-15
KEEP buffer cache              STATIC                  db_keep_cache_size                        0           0          0 COMPLETE  26-DEC-15 26-DEC-15
DEFAULT buffer cache           STATIC                  db_cache_size                             0  2.2817E+10 2.2817E+10 COMPLETE  26-DEC-15 26-DEC-15

14 rows selected.

SQL>

v$sga_dynamic_components

SQL> select * from v$sga_dynamic_components; 

COMPONENT                      CURRENT_SIZE   MIN_SIZE   MAX_SIZE USER_SPECIFIED_SIZE OPER_COUNT LAST_OPER_TYP LAST_OPER LAST_OPER GRANULE_SIZE
------------------------------ ------------ ---------- ---------- ------------------- ---------- ------------- --------- --------- ------------
shared pool                      6576668672 6576668672 6576668672                   0          0 STATIC                                67108864
large pool                        268435456  268435456  268435456                   0          0 STATIC                                67108864
java pool                         469762048  469762048  469762048                   0          0 STATIC                                67108864
streams pool                      134217728  134217728  134217728                   0          0 STATIC                                67108864
DEFAULT buffer cache             2.2817E+10 2.2817E+10 2.2817E+10                   0          0 INITIALIZING                          67108864
KEEP buffer cache                         0          0          0                   0          0 STATIC                                67108864
RECYCLE buffer cache                      0          0          0                   0          0 STATIC                                67108864
DEFAULT 2K buffer cache                   0          0          0                   0          0 STATIC                                67108864
DEFAULT 4K buffer cache                   0          0          0                   0          0 STATIC                                67108864
DEFAULT 8K buffer cache                   0          0          0                   0          0 STATIC                                67108864
DEFAULT 16K buffer cache                  0          0          0                   0          0 STATIC                                67108864
DEFAULT 32K buffer cache                  0          0          0                   0          0 STATIC                                67108864
Shared IO Pool                            0          0          0                   0          0 STATIC                                67108864
ASM Buffer Cache                          0          0          0                   0          0 STATIC                                67108864

14 rows selected.

SQL>

v$sga_dynamic_free_memory

SQL> select * from v$sga_dynamic_free_memory;

CURRENT_SIZE     CON_ID
------------ ----------
    50331648          0

SQL>
时间: 2024-12-19 20:10:01

ORACLE 11G内存管理方式的相关文章

操作系统--内存管理方式

“碎片的内存”描述一个系统中所有不可用的空闲内存.这些资源之所以仍然未被使用,是因为负责分配内存的分配器使这些内存无法使用.这一问题通常都会发生,原因在于空闲内存以小而不连续方式出现在不同的位置.由于分 配方法决定内存碎片是否是一个问题,因此内存分配器在保证空闲资源可用性方面扮演着重要的角色. internal fragmentation:when memory allocated to a process is larger than requested memory, the differe

oracle的内存管理(之一)

[深入解析oracle-eygle]学习笔记 1.内存管理 ORACLE数据库所使用的内存主要涉及到两个方面:PGA和SGA. 1.1 PGA管理 PGA指的是程序全局区(Program Global Area),是服务器进程(Server Process)使用的一块包含数据和控制信息的内存区域,PGA是非共享的内存,在服务器进程启动或创建时分配(在系统运行时,排序.连接风操作也可能需要进一步的PGA分配),并为Server Process排他访问,所以PGA中的数据结构并不需要通过latch来

glusterfs 内存管理方式

glusterfs中的内存管理方式: 1 struct mem_pool * 2 mem_pool_new_fn (unsigned long sizeof_type, 3 unsigned long count, char *name) 4 { 5 struct mem_pool *mem_pool = NULL; 6 unsigned long padded_sizeof_type = 0; 7 void *pool = NULL; 8 int i = 0; 9 int ret = 0; 1

windows内存管理方式以及优缺点

Windows内存管理方式:页式管理,段式管理,段页式管理 页式管理 将各进程的虚拟空间(逻辑地址)划分为若干个长度相等的页,业内管理把内存空间(物理内存)按照页的大小划分为片或者页面,从而实现了离散分配,然后把页式虚拟地址和内存地址建立一一对应的页表,并用相应的硬件地址变换机构来解决离散地址变化问题,(程序加载时,可将任意一页放入内存中任意一个页框而且这些页框不必连续,从而实现了离散分配)页式管理采用请求调页或预调页技术来实现内外存存储器的统一管理,地址结构由两部分构成,页号+页内地址 其优点

Oracle 11g DRCP连接方式——基本原理

学习Oracle是一个复杂.繁琐的过程.在浩如烟海的Oracle官方资料.新特性.MOS资料和各种Internal知识面前,我们总是觉得力不从心.不知所措.但是,这往往也就是我们不断坚持.积累和追寻的乐趣. 在Oracle 11g中,提出了突破传统专用/共享连接的第三种连接方式——Database Resident Connection Pooling(DRCP).本篇我们一起来探讨这项技术. 1. 从Dedicated Server到Shared Server Client Process连接

oracle体系结构-内存管理

一.Oracle体系结构概述 数据库--驻留在磁盘上的--各种磁盘文件(数据文件.控制文件.日志文件) 实例--驻留在内存--内存组件+进程---------------一旦数据库关闭,不存在了 数据库和实例的关系 A 一个数据库对一个实例(单节点) 数据库--实例 B 一个数据库对N个实例(多节点)--防止单点故障(oracle高可用架构)--7*24的系统 实例1     实例2      实例3    ... 实例n    ----每个实例都独立安装在独自的虚拟机上            

设置ORACLE自动内存管理

文章参考:ORACLE 11g官方文档[Managing Memory] 前言:之前搭建数据库集群环境后,现场的维护人员不知何时改为了手动内存管理,且参数设置存在不合理,导致客户plsql执行报错,如下所示: 查看数据库日志,有如下提示: Wed Mar 15 00:15:08 2017 Errors in file /app/oracle/diag/rdbms/resdb/resdb1/trace/resdb1_ora_12320832.trc  (incident=441054): ORA-

十天学Linux内核之第三天---内存管理方式

昨天分析的进程的代码让自己还在头昏目眩,脑子中这几天都是关于Linux内核的,对于自己出现的一些问题我会继续改正,希望和大家好好分享,共同进步.今天将会讲诉Linux如何追踪和管理用户空间进程的可用内存和内核的可用内存,还会讲到内核对内存分类的方式以及如何决定分配和释放内存,内存管理是应用程序通过软硬件协助来访问内存的一种方式,这里我们主要是介绍操作系统正常运行对内存的管理.插个话题,刚才和姐姐聊天,她快结婚了,说起了自己的初恋,可能是一句很搞笑的话,防火防盗防初恋,,嘎嘎,这个好像是的吧,尽管

Oracle 11g常用管理命令(用户、表空间、权限)

PS:下面是Oracle 11g最常用的基本管理命令,包括创建用户.表空间,权限分配等.以下命令本人都验证操作过,并加上了本人的小结与说明. 1.启动oracle数据库: 从root切换到oracle用户进入: su - oracle 进入sqlplus环境,nolog参数表示不登录: sqlplus /nolog 以管理员模式登录: sqlplus / as sysdba 启动数据库 startup; 停止数据库 shutdown immediate 远程连接数据库 sqlplus /nolo