物理体系图
1.Oracle 由实例和数据库组成,上图的2区和3区。
2.1区2区都是开辟出来的内存区,PGA和SGA最明显的差别在于,PGA不是共享内存区,是私有不共享的。用户对数据库发起的无论查询还是更新的任何操作,都是在PGA先预处理,然后接下来进入实例区域,由SGA和系列后台进程共同完成用户发起的请求。(PGA具体起到的作用就是预处理:1.保存用户的连接信息,如会话属性,绑定变量等2.保存用户的权限等重要信息,当用户进程与数据库建立会话时,系统会将这个用户的相关权限查询出来,然后保存在这个会话区内 3.当发起的指令需要排序时,PGA正是这个排序区,如果内存中可以放下这个排序的尺寸,就在内存PGA区内完成,如果放不下,超出的部分就在临时表空间中完成排序,也就是在磁盘中完成排序)
3.2区实例是由共享内存区SGA和一系列后台进程组成的,其中SGA被划分为共享池,数据缓存区和日志缓存区三类。后台进程包括PMON,SMON,LCKn,RECO,CKPT等系列进程组成。
4.3区数据库文件是由数据文件、参数文件、日志文件、控制文件、归档日志文件等系列文件组成的,其中归档日志文件最终可能被转移到新的存储介质中,用于备份恢复使用。
5.用户的请求发起经历的顺序一般时:1区--2区--3区 或者 1区---2区
提问:为什么会有不经过3区的情况?
提示一下,和PGA内存区有关!具体内容,且听下回分解。。。