【数据库知识】学不会的Oracle-技术架构

技术架构

Oracle数据库的技术架构是复杂而精细的,它由多个组件组成,以确保数据的高效存储、检索和管理。以下是Oracle技术架构的详细说明:

1. 实例(Instance)和数据库(Database)

Oracle数据库由两个主要实体组成:实例和数据库。实例是Oracle数据库运行时的内存和进程集合,而数据库是存储数据的物理文件集合,包括数据文件、控制文件和重做日志文件 。

2. 系统全局区(SGA)

SGA是实例的一部分,是一组在Oracle数据库实例启动时分配的共享内存结构。SGA包含多个部分,如:

共享池(Shared Pool):缓存共享SQL和PL/SQL代码,减少解析和执行相同SQL语句的次数。
数据库缓冲区(Database Buffer Cache):存储从数据文件中读取的数据块,避免重复的磁盘I/O。
重做日志缓冲区(Redo Log Buffer):记录对数据库所做的更改,以便在发生故障时恢复数据 。

3. 后台进程

Oracle实例包括多个后台进程,负责数据库的各种管理任务,如:

系统监控进程(SMON):在数据库启动时执行恢复操作,以及在数据库运行期间执行清理操作。
进程监控进程(PMON):监控用户进程,确保在用户进程失败时释放资源。
数据库写进程(DBWR):将更改的数据从SGA的数据库缓冲区写入数据文件。
日志写进程(LGWR):将重做日志缓冲区的内容写入在线重做日志文件 。

4. 程序全局区(PGA)

PGA是Oracle为每个服务器进程分配的非共享内存区域,包含会话特定的数据和控制信息。PGA在服务器进程创建时分配,并在服务器进程终止时回收 。

5. 物理结构

Oracle数据库的物理结构包括存储在磁盘上的文件,主要有:

数据文件(Data Files):存储实际的数据库数据。
控制文件(Control Files):记录数据库的物理结构信息,如数据文件和重做日志文件的位置。
重做日志文件(Redo Log Files):记录对数据库所做的更改,用于数据恢复 。

6. 逻辑结构

Oracle数据库的逻辑结构是面向用户的,它包括:

表空间(Tablespaces):数据库中存储数据的逻辑单位。
段(Segments):表空间内分配给特定数据结构(如表或索引)的空间。
区(Extents):段内分配给数据块的连续空间。
块(Blocks):数据库存储数据的最小单位,也是I/O操作的最小单位 。

7. Real Application Clusters (RAC)

Oracle RAC允许跨多个服务器运行单一Oracle数据库,访问共享存储,提高数据库的可用性和可扩展性。RAC通过在多台服务器上运行多个实例来实现高可用性和负载均衡 。

Oracle的技术架构设计得非常灵活,可以支持从单实例到复杂的RAC配置,以满足不同规模和性能要求的数据库应用需求。

 

 

阅读剩余
THE END
阿里云ECS特惠活动
阿里云ECS服务器 - 限时特惠活动

云服务器爆款直降90%

新客首单¥68起 | 人人可享99元套餐,续费同价 | u2a指定配置低至2.5折1年,立即选购享更多福利!

新客首单¥68起
人人可享99元套餐
弹性计费
7x24小时售后
立即查看活动详情
阿里云ECS服务器特惠活动