oracle数据库的体系结构_第1张图片

我在这里要说明的是实例和数据库:

instance:

1用来访问 oracle数据库,

2实例总是打开或者只打开一个数据库:

3如果有两个数据库那么就再起一个实例。

4内存和后台进程结构,组成。

database:

数据库由3类文件组成 datafiles  controlfiles  redo logfiles

datafiles 里面存放的都是用户的数据

control files 里面存放有关数据库的信息 我们用控制文件对数据库的文件和其他的文件进行管理

redo logfiles 我们对oracle里数据库的数据块做了任何的改变,那么oracle都会把它记录下来,保证以后需要可以重做。

其他的 parameterfiles (参数文件) passwordfiles (密码文件) archive logfiles (归档日志文件) 都不属于数据库的组成部分

 总结:oracle instance + oracle database=oracle server

 

oracle数据库的体系结构_第2张图片

比如 我要查询一个表,用户进程就会提出请求,发给server进程,server进程在把请求发给数据库,数据库处理这个请求之后在把这个请求返回

server 进程, server 进程在把结果返回给用户进程

 

oracle数据库的体系结构_第3张图片

总结:启动数据库先打开控制文件在打开数据文件,控制文件用来数据文件和日志文件,我们可以通过参数文件找到控制文件。在这里在以后进行数据库的冷热备份的时候在具体介绍。

 

oracle数据库的体系结构_第4张图片

从逻辑上讲一个表空间对应多个段,

从逻辑上讲表空间和段也存在一一对应的关系

但是段和物理上的数据文件不存在一一对应的关系

一个段包含多个盘区,oracle存储数据的基本单元式块,在windows平台下默认是8k

在安装数据库的时候可以设定块的大小,但是oracle块的大小一定是操作系统的整数倍,

若干块构成盘区若干盘区构成段若干段构成表空间,而我们真正指定表存储的时候只能指定存储在哪个表空间。