ZK1_Oracle结构体系

Oracle体系结构

 

1.物理结构(文件系统)

参数文件用来寻找控制文件

控制文件用来管理和控制数据文件以及日志文件

 

2.Oracle内存结构

Oracle实例开始运行时分配了一个大的内存块 系统全局区

系统全局区又称SGA System Global Area)是Oracle Instance的 基本组成部分,在实例启动时分配。是一组包含一个Oracle实例的数据和控制信息的共享内存结构。


ZK1_Oracle结构体系
 

整个的SGA区域中包含以下缓存池

A)DBbuffer 数据库高速缓存区  内存中用来频繁访问的数据的区域 SGA区域中最大的一个部分

DBbuffer又包括以下的三个缓存值

默认缓存值

保持缓存值  对于想在内存中长期保存的 频繁访问的 代码表  在数据库关闭之前一直保留 并不从内存中释放空间 

再生缓存值 想尽快从内存中排除的 如频繁访问的大表

 


ZK1_Oracle结构体系
 

B)大共享区

C)共享池

 

 
ZK1_Oracle结构体系
 

库缓存区

共享sql区 保留了sql语句的解释版本以便于再次使用时不必重新解释,sql语句再次执行时提高进程的速度。

PL/SQL区 保留了PL/SQL的过程、函数等程序单元的编译版本 以便所有的用户可以共享。

当程序执行一个单元的时候,即PL/SQL的一个执行单元,当有多个用户执行相同的过程、函数或相同的触发器等相关内容的时候,Oracle把相同的代码做拷贝被不同的用户缓存

 

字典缓存区,缓存数据字典信息 当分析SQL语句来校验表名 列名、数据类型等信息

通过把对频繁使用的数据字典的信息存储在内存中 减少了sql语句相关性能上的一些冲突

 

RedoBuffer 日志缓存区

放置需要写入磁盘的redo记录

 

固定SGA:我们不能设定大小 完全有Oracle独立的控制大小

 

3.Oracle的逻辑结构


ZK1_Oracle结构体系
 

一个表空间对应多个数据文件

逻辑上我们是把表和表数据存储在表空间中的

 

一个表空间包含多个段

一个段可以包含多个盘区

Oracle存储数据的最基本单位是一个块 

window平台 默认一个块大小8K Oracle块大小一定是操作系统块大小的整数倍

<!--EndFragment-->

你可能感兴趣的:(oracle)