您的位置:首页 > 数据库 > Oracle

浅谈Oracle体系结构(学习笔记)

2012-12-18 14:29 501 查看
前言
      在学习oracle中,体系结构是重中之重,掌握的越深入越好。在实际工作遇到疑难问题,其实都可以归结到体系结构中来解释,所以我们根据下面的示图了解一下oracle体系结构。其中oracle内存结构不在复述,参照文章/article/4278631.html



1.oracle服务器
①提供一个开发的、全面的、完整的信息管理平台。
②oracle实例和oracle数据库组成。
注:一个实例只能对应一个数据库
一个数据库可以由多个实例(RAC)
2.oracle实例
①实例为用户同数据库交互的媒介
②只能打开一个数据库
③由内存结构(SGA、PGA)和用户进程



后台进程
实例中的后台进程执行用于处理并行用户请求所需的通用功能,而不会损害系统的完整性和性能。它们把为每个用户运行的多个 Oracle 程序所处理的功能统一起来。后台进程执行 I/O 并监控其它 Oracle 进程以增加并行性,从而使性能和可靠性更加优越。
根据配置情况,Oracle 实例可以包括多个后台进程,但是每个实例都包括下面五个必需的后台进程:
① 数据库写入程序 (DBW0) 负责将更改的数据从数据库缓冲区高速缓存写入数据文件。
② 日志写入程序 (LGWR) 将重做日志缓冲区中注册的更改写入重做日志文件。
③ 系统监控程序 (SMON) 检查数据库的一致性,如有必要还会在数据库打开时启动数据库的恢复。
④过程监视器 (PMON) 负责在一个 Oracle 进程失败时清理资源
⑤检查点进程 (CKPT) 负责在每当缓冲区高速缓存中的更改永久地记录在数据库中时,更新控制文件和数据文件中的数据库状态信息。
3.连接Oracle Server


 
用于连接例程的进程
用户在给 Oracle 提交 SQL 语句之前,必须同实例连接起来。
① 用户启动 SQL*Plus 之类的工具,或者运行使用 Oracle Forms 之类的工具开发的应用程序。这个应用程序或者工具就在用户进程中执行。
② 在最基本的配置中,当用户登录到 Oracle 服务器时,运行 Oracle 服务器的计算机上就会创建一个进程。这个进程称为服务器进程。服务器进程代表在客户机上运行的用户进程与 Oracle 实例通信。服务器进程代表用户执行SQL 语句。
连接
连接是用户进程和 Oracle 服务器之间的通信路径。数据库用户可以用下面三种方式之一连接到 Oracle 服务器:
① 用户登录到运行 Oracle 实例的操作系统上,然后启动访问该系统中的数据库的应用程序或工具。通信路径是使用主机操作系统上的交互进程通信机制建立的。
② 用户在本地计算机上启动应用程序或工具,然后通过网络连接到运行 Oracle实例的计算机。在这项称为客户机-服务器的配置中,网络软件用于用户和Oracle 服务器之间进行的通信。
③ 在三层连接中,用户计算机通过网络与应用程序或网络服务器进行通信,而该应用程序或网络服务器又通过网络与运行 Oracle 实例的计算机连接。例如,用户在网络计算机上运行浏览器来使用位于服务器上的应用程序,这个 服务器从在 UNIX 主机上运行的 Oracle 数据库中检索数据。
会话
会话是用户与 Oracle 服务器的一种特定连接。当用户由 Oracle 服务器验证时会话开始,当用户退出或出现异常终止时会话结束。对某个具体的数据库用户来说,如果他从很多工具、应用程序或者终端同时登录,则可能有很多并发会话。除了一些专用数据库管理工具以外,启动数据库会话还要求 Oracle 服务器可供使用。
4.oracle数据库
①数据信息的组合
②三种类型文件
数据文件
控制文件
日志文件
一个 Oracle 数据库是一个数据单位的集合。 主要目的是为了储存和读取信息,Oracle 数据库可以分为逻辑(logical)结构和物理(physical)结构。
物理结构指数据库中的操作系统文件的集合,包含以下三种文件:
数据文件(data file) 包含数据库中实际数据。数据包含在用户定义的表中,而且数据文件还包含数据词典(data dictionary),
一个数据库中至少包含一个数据文件。数据文件的特性有: 一个数据文件只能被一个数据库使用;当数据库空间不足时,数据文件具有自动扩展的特性;一个或者多个数据文件构成数据库的逻辑存储单元叫做表空间(tablespace).
重作日志(Redo logs) 包含对数据库的修改记录,可以在数据失败后恢复。一个数据需要至少两个重作日志文件。
控制文件(Control files) 包含维护和检验数据库一致性的信息。例如:控制文件用来检验数据文件和重作日志文件。
物理结构:
物理结构包括三种文件:
控制文件
数据文件
日志文件
oracle逻辑结构
数据如何使用服务空间
表空间、段、区、块的组成层次



5.用户进程(user process)
一个请求连接到oracle服务器的程序
必须首先建立一个连接
并不直接与oracle服务器交互



6.服务器进程(server process)
一个与Oracle服务器直接交互的程序
负责执行返回结果
专用服务器(dedicated)或共享服务器(shared server)
7.后台进程(Background Processes)
必须的后台进程
     DWRn      PMON     CKPT      LGWR      SMON
可选的后台进程
    ARCn       LMDn     QMNn       CJQ0        LMON         RECO         Dnnn        LMS         Snnn      LCKn        Pnnn
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: