Oracle 数据库系统结构概述
Oracle 数据库由数据库存储结构
和数据库实例
两部分构成。
-
数据库
数据库是位于磁盘上的一组文件,用于存储数据。这些文件可以独立于数据库实例而存在。
-
数据库实例
实例是一组管理数据库文件的内存结构。该实例由一个共享内存区域(称为系统全局区域
SGA
)和一组后台进程组成。实例可以独立于数据库文件而存在。
下图显示了数据库及其实例。对于与实例的每个用户连接,客户端进程将运行该应用程序。每个客户端进程都与自己的服务器进程相关联。服务器进程具有自己的专用会话内存,称为程序全局区域PGA
。
其中存储结构
包括物理存储结构
和逻辑存储结构
,是数据存储及空间分配
的基础;实例
是构成 Oracle 数据库的软件结构
,包括内存结构
和后台进程
,是数据库运行与管理
的基础。
Oracle 数据库由存放在磁盘上的数据库DB
和对磁盘上的数据库进行管理的数据库管理系统DBMS
两部分构成,分别对应着数据库的存储结构
和软件结构
。
Oracle 数据库的存储结构(Storage Structure)分为物理存储结构
和逻辑存储结构
两种,分别描述了在操作系统
中和数据库系统
内部数据的组织与管理方式。其中,物理存储结构表现为操作系统中一系列文件,逻辑存储结构是对物理存储结构的逻辑组织与管理。
Oracle 数据库的软件结构,即 Oracle 实例(Instance),包括内存结构
与后台进程结构
两部分。
图描述了 Oracle 数据库内存结构
、后台进程结构
、存储结构
之间的关系。从图中可以看出,用户的所有操作都是通过实例
完成的,首先在内存结构
中进行,在一定条件下由数据库的后台进程结构
写入数据库的物理存储结构
做永久保存。