Oracle体系架构
一:体系架构组成部分
Oracle由实例(instance)和数据库(database)组成
二 实例组成部分:SGA(系统全局) + 后台进程 + PGA (为后台进程分配的内存)
三 SGA
概念:oracle数据库运行时,会现在内存中划分一个固定区域,用于存储每个用户所需存取的数据,以及oracle运行时必备的系统信息,叫系统全局区(System global area),由于他是用户进程共享的一块内存区域,也叫共享内存区。
作用:优化对oracle对数据库的操作,提高性能
1 共享区
1.1 Library cache 用于存放解析之后的sql语句,在执行一个sql语句之后,将该sql语句存放到library cache内存中,如果下次需要再次执行该sql语句,就不要解释直接从该内存区域中执行。
1.2 data dictionary cache 数据字典
32database buffer cache 数据库缓冲区 用于存放从硬盘中读取的数据或者写入磁盘的数据,如果下次读取相同数据,则直接总缓冲区读取,不需要再次读取硬盘上的数据,提高效率。
3 redo log buffer 重做日志缓冲区 用于记录数据库中所有数据修改的内存区域。加快数据操作速度。
4 java pool java池。一般用于和java打交道的内存区域
5 large pool 备份信息的存放
四 后台进程
1 PMON 进程检查 检查其他进程是否有误,如果有误,负责清理资源
2 SMON 系统监控 如果因为停电或者其他因素导致oracle数据库不被正常关闭,下一次激活数据库时将由SMON进行必要的数据库修复动作。
3 DBWR/DBWn 负责将database buffer cache内改动过的数据写入硬盘内的数据文件
3.1 DBWR 表示唯一的进程写入数据
3.2 DBWn 表示多个进程写入数据
4 CGWR 日志写入进程 将 redo log buffer内的更改写入重做日志文件
5 CKPT 检查点进程 负责在每当缓冲区高速缓存中的更改永久地记录在数据库中时,更新控制文件和数据文件中的数据库状态信息。
6 ARCH 归档进程 在每次日志切换时,把已满的日志组进行备份或者归档。
五 PGA (Program Global area)
用户存放服务器进程的数据和控制信息,是独立于SGA的一块内存区域,oracle服务器会为每个服务器进程分配相应的PGA。
PGA组成部分:排序区、会话信息。游标状态、堆栈空间
六 oracle物理结构
1 数据文件 data file 具体的数据文件,例如数据表,索引等。
2 重做日志文件 redo file
3 控制文件 control file
4 初始化参数文件 parameter file
5 口令文件 password file
必须的文件是:控制文件、数据文件、重做日志文件。控制文件包含了其他文件的地址,在访问其他文件之前必须先访问控制文件。
七 oracle逻辑结构
1 表空间 (tablespace)
用于存放不同类型的数据与数据库对象
2 段(segment)
存放不用的数据
3 区(extend)
一连串的数据块
4 块(block)
oracle存放数据的最小促存单元
注意:
一个表空间(tablespace)可以跨越多个数据文件(data file),相反,一个数据文件只能表示一个表空间
区是不能跨越数据文件存在的。
本文转自:http://blog.csdn.net/suncui234/article/details/7937538#comments