码迷,mamicode.com
首页 > 数据库 > 详细

2、Oracle内存结构

时间:2016-05-15 16:49:53      阅读:261      评论:0      收藏:0      [点我收藏+]

标签:

技术分享

  • 系统全局区(SGA),也叫共享全局区。

1、数据缓冲区(Data Buffer Cache):

用于存储从磁盘数据文件中读取的数据,供所有用户共享。用户修改数据后,修改后的数据先保存在数据库缓冲区中,最后由DBWn进程写入磁盘数据文件。

 

2、日志缓冲区(Redo Log Buffer Cache):

用于存储数据库的修改操作信息。当日志缓冲区中的日志数据达到一定限度时,由日志写入进程LGWR写入磁盘日志文件。

技术分享

3、共享池(Shared Pool):

用于保存最近执行的SQL语句、PLSQL程序的数据字典信息,它是对SQL语句和PLSQL程序进行语法分析、编译和执行的内存区域。

(1).库缓冲区(library cache):SQL语句的分析码和执行计划;

(2).数据字典缓冲区(data dictionary cache):数据字典中得到的表、列定义和权限;

(3).用户全局区(user globalarea):保存用户的会话信息。

 

  • 程序全局区(PGA)

是包含单个用户(或服务器)数据控制信息内存区域。PGA不是共享区,只有服务器本身才能访问自己的PGA,它主要用来保存用户在编程时使用的变量数组等。

技术分享

 

  • 排序区(Sort Area)

Oracle系统为排序操作所产生的临时数据,提供的内存空间。在Oracle中,存放用户排序操作所产生的临时数据的区域有两个,内存排序区和临时表空间,优先使用内存排序区进行排序操作,如果内存空间不够,再使用磁盘临时段。

技术分享

性能调优知识点:

Oracle尽量使用内存排序。

select name,value from v$sysstat where name like ‘%sort%‘; 

sorts(memory)表示内存排序量, sorts(disk)表示磁盘序量。

失败率 = sort(disks)/sorts(memory)  ×100%  排序区的失败率不得小于5%,否则必须增加排序sort_area_size的大小,使得Oracle尽量使用内存排序。磁盘IO的调整就是把数据文件放在多个不同的磁盘上。

 

  • 大池(Large Pool)

用于提供一个大的缓冲区供数据库的备份与恢复操作。

 

  • Java池(Java Pool)

用于在数据库中支持java的运行。

2、Oracle内存结构

标签:

原文地址:http://www.cnblogs.com/jionjionyou/p/5495324.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!