首页 > 数据库 > Oracle > ORACLE的SGA的组成、作用
SGA也叫系统全局区,
如上图,从左至右:SGA主要由共享池(Shared Pool)、数据高速缓冲区(Database Buffer Cache)、重做日志缓冲区(Redo Log Cache)、大型池(Large Pool)、Java池(Java Pool)、流池(Streams Pool)和其他结构(如固定SGA、锁管理等)组成。
主要是以下3个:
1、数据库高速缓冲区(data buffer cache)
在数据高速缓冲区中,存放Oracle系统最近使用过的数据块(即用户的高速缓冲区)。
数据高速缓冲区,包括三个类型的区:
1) 脏数据区(Dirty Buffers):包含有已经改变过并需要写回数据文件的数据块。
2) 自由区(Free Buffers):没有包含任何数据并可以再写入的区,Oracle可以从数据文件读数据块该区。
3) 保留区(Pinned Buffers):此区包含有正在处理的或者明确保留用作将来用的区。
2、重做日志缓冲区Redo Log Buffer Cache----对应参数log_buffer
用来缓存对于数据块的所有修改。
3、共享池Shared Pool
用于存放PL/SQL代码、SQL语句以及数据字典信息。
它主要由两个内存结构区域构成:Library cache和Data dictionary cache
修改共享池的大小:ALTER SYSTEM SET SHARED_POOL_SIZE = 64M;
数据字典信息缓存在内存中有助于缩短响应时间。
其他的如下简介:
大型池(Large Pool)最主要用途就是供RMAN备份和共享连接模式。
Java池(Java Pool)用于支持JAVA虚拟机(JVM)。
流池(Streams Pool)支持流。
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/27025927/viewspace-1269045/ ,如需转载,请注明出处,否则将追究法律责任。