Oracle-sga → large_pool , jave_pool , streams_buffer , redo_log_buffer

来源:互联网 发布:php调用api接口实例 编辑:程序博客网 时间:2024/05/25 23:26

1.large_pool


large_pool用来分配大内存块,来处理比shared pool更大的内存,实际常常用来做备用池,用以缓解oracle对共享池和PGA区内存的使用压力,使用large_pool的对象主要有:


*多线程服务器MTS:在SGA的large_pool中分配UGA;

*语句的并行查询parallel exection:用作进程间的消息缓冲器;

*恢复管理器RMAN:备份时用作磁盘I/O缓冲器


查看large_pool参数默认设置值,为0 则表示ASMM已开启


SQL> show parameter large_pool_size;


NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
large_pool_size                      big integer 0



查看large_pool当前运行期间ASMM实际分配大小

SQL> select pool,sum(bytes) from v$sgastat group by pool;


POOL         SUM(BYTES)
------------ ----------
              352318320
shared pool   671093432
large pool     16777216 (16M)
java pool      33554432


2.java_pool

Oracle在内核中加入了对java的支持,该缓冲区转为java开发和应用所设,若不用java程序则无必要修改该缓冲区的默认大小


查看java_pool参数默认设置值,为0则表示ASMM开启

SQL> show parameter java_pool;


NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
java_pool_size                       big integer 16M


查看java_pool当前运行期间ASMM实际分配大小

SQL> select pool,sum(bytes) from v$sgastat group by pool;


POOL         SUM(BYTES)
------------ ----------
              352318320
shared pool   671093432
large pool     16777216 
java pool       33554432(32M)


3.streams_buffer

用于对流复制进行缓冲

查看streams_buffer大小

SQL> show parameter streams_pool_size;


NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
streams_pool_size                    big integer 0



4.redo_log_buffer

对数据库的任何修改都按顺序被记录在该缓冲区中,然后由LGWR进程根据条件将更改信息批量写入磁盘的redolog文件中,以节省磁盘IO,该缓冲不参与ASMM的动态管理,不能自动调整大小。

查看redo_log_buffer大小


SQL> show parameter log_buffer;


NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
log_buffer                           integer     14302208


SQL> select name,bytes from v$sgastat where name='log_buffer';


NAME                            BYTES
-------------------------- ----------
log_buffer                   14749696


手动修改redo_log_buffer大小

SQL> select system set log_buffer=6000000 scope=spfile;(重启数据库生效)




SGA专题讲解:

  

Oracle-SGA → sga_target and sga_max_size

http://blog.csdn.net/together8/article/details/14087985


   

原创粉丝点击