Oracle体系结构一窥宏观架构(oracle体系结构概述)

Oracle体系结构:一窥宏观架构

Oracle数据库是目前世界上最为流行的关系型数据库之一,其良好的可扩展性和高可用性备受IT业界的追捧。而为了深入了解Oracle数据库,必须掌握其体系结构,本文将介绍Oracle数据库的宏观架构。

Oracle数据库的体系结构架构

Oracle数据库的体系结构可以概括为两个主要的层次:实例(Instance)和数据库(Database)。其中,实例被认为是数据库运行时的实例,是在内存中所占用的一块区域。而数据库则是物理存储在磁盘上的数据文件。在实例中,又包含了多个进程,如启动进程、后台进程、用户进程、服务器进程等。

实例层次

下面,我们分别介绍实例层次中各个进程的作用和功能。

启动进程(Start-up Process)

启动进程是Oracle数据库在启动时产生的第一个进程,用于加载Oracle实例。一旦Oracle实例已被成功加载并启动,该进程便会自动退出。启动进程的标示符为SP。

后台进程(Background Process)

Oracle数据库有多个后台进程运行在操作系统的背景中,这些进程的工作是保证数据库的运转并在系统资源不足时自动适应。这些后台进程的数量和功能的多少在不同的Oracle版本中都是不同的,但是他们基本上都包含以下这些进程:

– System Monitor Process(SMON)

SMON进程主要负责一些磁盘时钟表的管理,如保证错误的解决、实现数据更改等。SMON进程也是整个Oracle数据库中最重要的进程之一。

– Process Monitor Process(PMON)

PMON进程主要监控Oracle实例下的进程,并在需要时重启或是链接断开。一般来讲,当用户进程非正常关闭时,PMON进程会自动启动,以便清理未完成的操作。

– Database Writer Process(DBWN)

DBWN进程用于将缓存中的数据库文件写入到磁盘上。

– Checkpoint Process(CKPT)

CKPT进程用于定期将数据库缓存信息写入到磁盘中的存储文件中,这个操作可以有效地减少数据库恢复时的时间。

– Log Writer Process(LGWR)

LGWR进程主要用于将内存缓存中的日志信息写入到物理磁盘中。

– Process Queue Monitor(PQMN)

PQMN进程用于监控整个Oracle实例中的所有流量队列以及解决由于流量过大而导致的系统失效问题。

– Archiver Process(ARCn)

Arc进程用于在Oracle数据备份时将缺失的归档存储文件拷贝到备份文件中。

用户进程(User Process)

Oracle数据库的用户进程被定义为执行SQL语句并处理运行中应用程序的进程。这些进程主要是与应用程序相绑定的进程,直接响应应用程序的SQL请求,执行SQL语句。

服务器进程(Server Process)

Oracle数据库的服务器进程主要包括两种类型的进程:Shared Server Process和Dedicated Server Process。Shared Server Process可被多个应用程序共同使用,并且可以为随时到来的应用程序提供服务,而Dedicated Server Process则是专门为某个应用程序提供服务的进程,在应用程序启动时产生,应用程序结束时自动消失。

数据库层次

数据库层次中包含了三个重要的组成部分:表空间(Tablespace)、数据文件(Datafile)和超级用户(Sys and System)。

表空间(Tablespace)

Oracle数据库中,表空间被视为数据存储的逻辑单元,即群集中的数据按其用途和性质分别存储在不同的表空间中。表空间是在实例运行期间均被分配的,而且一个实例可能包含多个表空间。

数据文件(Datafile)

Oracle数据库中的数据文件是实际存储数据的文件,是物理存储在磁盘上的文件。数据文件存储了数据定义和具体的数据,在数据库启动时便被打开。

超级用户(Sys and System)

Sys和System是Oracle数据库中的两个超级用户,他们在Oracle数据库中扮演着极为重要的角色,其拥有最大的系统权限。Sys用户是数据库内核的管理员用户,其它高等级的紧急处理操作都必须通过Sys用户完成;而System是一般管理员的普通用户,System的权限也较Sys用户低。

总结

Oracle数据库的宏观体系结构可以很清晰地总结为两个层次:实例和数据库。实例层次包含了启动进程、后台进程、用户进程和服务器进程;而数据库层次则包含了表空间、数据文件和超级用户。掌握Oracle数据库的体系结构架构,不仅可以为运维工作提供指导,同时也有助于进行性能调优,进一步发挥Oracle数据库的潜力。


数据运维技术 » Oracle体系结构一窥宏观架构(oracle体系结构概述)