Oracle服务器由两个实体组成:实例和数据库。

实例由内存结构和进程组成。 它暂时存在于RAM和CPU中。当关闭运行的实例时,实例将消失的无影无踪。

数据库由磁盘上的文件组成。不管在运行状态还是停止状态下,这些文件都一直存在。

在Oracle服务器上,从物理存储中完全抽象出了逻辑存储。程序员看到的逻辑结构(例如表)不直接与系统管理员看到的物理结构(数据文件)相关。两者的关系由控制文件和数据字典中的结构来维护。

在操作系统提供的共享内存段实现的内存结构称为系统全局区(system global area,SGA)。SGA在实例启动时分配,在关闭时释放。在一定范围内,可以在实例运行时通过自动方式或相应DBA的指令,重新调整12c实例中的SGA及其中的组件的大小。

用户会话由在用户计算机本地运行的用户进程(连接到在服务器实例上运行的服务器进程)组成。用户进程与服务器进程的连接一般经由局域网实现,并使用Oracle专用的Oracle Net协议。

服务器进程有事称为前台进程(与构成实例的后台进程相对)。与每个服务器进程相关的是一个非共享内存区,即程序全局区(program global area,PGA)。与系统全局区(可用于所有前台和后台进程)不同,此区是会话专用的。注意,后台进程也拥有PGA。任一会话的PGA的大小将根据任一时间的会话的内存需要而异。DBA可以定义所有PGA总量的上限,而Oracle动态管理PGA对会话的分配情况。

12c中的内存管理可完全自动完成:DBA只需要指定SGA和PGA总体的内存分配,并让Oracle按其认定的最佳方式管理内存。DBA也可以自己控制内存分配,或DBA定义一些实施自动管理时的限制。

SGA内存由所有后台和前台进程共享,PGA内存仅供分配到的会话的前台进程访问。SGA和PGA内存都可以实现自动管理。

构成Oracle数据库的物理结构是数据文件、联机重做日志文件和控制文件。从物理存储抽象出逻辑存储,是关系数据库管理(RDBMS)标准的一部分。实际上,可以确定表在什么地方(甚至是表中的一行在什么地方),但不能通过标准SQL来确定。数据库管理员可以使用一些工具来确定位置。

数据存储在数据文件中。数据文件的数量或大小并无实际限制,从物理存储抽象出逻辑存储意味着,可以在应用程序开发人员不知情的情况下移动数据文件、调整数据文件的大小,以及添加更多数据文件。物理结构和逻辑结构之间的关联在数据字典中维护和记录,数据字典包含用来描述整个数据库的元数据。通过查询数据字典中的某些视图,DBA可以准确地确定每个表的每个部分的位置。

数据字典是存储在数据库中的一组表。此处存在一个递归问题:实例需要了解数据库的物理和逻辑机构,但描述这些的信息本身位于数据库中。此问题的解决方案是分阶段启动进程。

Oracle通过重做日志实现了对变更的捕获。重做日志是对应用于数据的所有变更向量(change vector)的一系列的记录。变更向量是DML语句所做的更改。每当用户会话执行任何更改时,数据块中的数据本身会发生变化,变更向量会以可重复的格式写到重做日志中。在数据文件受到损坏时,可以还原文件备份,而且Oracle将从重做日志提取相关变更向量,并将其应用于文件的数据块中。

控制文件存储数据库物理结构的详细信息,并且是链接到逻辑结构的起点。当某个实例打开数据库时,它首先要读取控制文件,通过使用控制文件中的信息,实例可以连接到数据库的其余部分及其中的数据字典。

单实例数据库的体系结构由4个交互组件构成:

  • 用户与用户进程交互。
  • 用户进程与服务器进程交互。
  • 服务器进程与实例交互。
  • 实例与数据库交互。

Oracle 体系结构一 概述的更多相关文章

  1. Oracle体系结构总结

    1.Oracle 体系结构摘要图 2.Oracle 体系结构相关笔记 1.Oracle 体系结构摘要图 2.Oracle 体系结构相关笔记 可参考Oracle Architecture系列随堂笔记: ...

  2. Oracle 课程一之Oracle体系结构

    课程目标 •理解ORACLE数据库体系架构—内存结构和进程 •理解SQL在数据库中的运作流程 •理解UNDO&REDO原理 •理解commit原理   1.Oracle数据库概述 •数据库:物 ...

  3. Oracle体系结构之进程

    Oracle体系结构之进程 一.概述 Oracle中的每个进程都要执行一个特定的任务(或者一组任务),每个进程都会为自己分配内存(PGA)来完成它的任务.一个Oracle实例主要有以下3类进程: (1 ...

  4. oracle11g之Oracle体系结构(理论基础知识)

    第二章 oracle的体系结构 一.oracle体系结构概述1.实例和数据库组成完整的Oracle数据库系统数据库:一系列物理文件的集合(数据文件,控制文件,联机日志,参数文件等)实例:一组oracl ...

  5. oracle 体系结构

    oracle 体系结构 数据库的体系结构是指数据库的组成.工作过程与原理,以及数据在数据库中的组织与管理机制. 1. oracle工作原理: 1).在数据库服务器上启动Oracle实例:2).应用程序 ...

  6. Oracle实例和Oracle数据库(Oracle体系结构)

    --========================================== --Oracle实例和Oracle数据库(Oracle体系结构) --==================== ...

  7. 【转载】Oracle实例和Oracle数据库(Oracle体系结构)

    免责声明:     本文转自网络文章,转载此文章仅为个人收藏,分享知识,如有侵权,请联系博主进行删除.     原文作者:Leshami      原文地址:http://blog.csdn.net/ ...

  8. oracle 体系结构解析

    三.oracle 体系结构 1.oracle内存由SGA+PGA所构成 2.oracle数据库体系结构数据库的体系结构是指数据库的组成.工作过程与原理,以及数据在数据库中的组织与管理机制. oracl ...

  9. oracle体系结构

    oracle体系结构有四个部分组成分别为:oracle 服务器.用户进程.服务器进程.其他关键文件.其中oracle服务器又有实例(instance)和database组成是一个数据库管理系统. 一. ...

随机推荐

  1. UX2内核浏览加速技术纲要[带你解决WebView卡顿]

    UX2内核是本人负责主要开发的浏览服务项目,其主要目的是为开发者提供一个简单好用.轻便的网络浏览服务.UX2内核的安卓端是基于WebView进行深度优化的,同时欢迎大家使用这个内核用于app页面或浏览 ...

  2. QQ 聊天机器人小薇 1.0.1 发布!

    本次发布主要解决了消息丢失(Api返回码[1202])问题,并改进了改进了一些细节. 简介 XiaoV(小薇)是一个用 Java 写的 QQ 聊天机器人 Web 服务,可以用于社群互动: 监听多个 Q ...

  3. poj 1679 The Unique MST (判定最小生成树是否唯一)

    题目链接:http://poj.org/problem?id=1679 The Unique MST Time Limit: 1000MS   Memory Limit: 10000K Total S ...

  4. 深入理解http协议的特点

    HTTP 是一个属于应用层的面向对象的协议,HTTP 协议一共有五大特点:1.支持客户/服务器模式:2.简单快速:3.灵活:4.无连接:5.无状态. 无连接 无连接的含义是限制每次连接只处理一个请求. ...

  5. SQL Server ->> 自动创建表并从文件加载数据

    这个存储过程自动创建表并从文件加载数据. 有一点需要说明的是Excel 12.0驱动是兼容了Excel 97-2003和Excel 2007两者格式的Excel文件. CREATE PROCEDURE ...

  6. 【Leetcode】【Medium】Convert Sorted Array to Binary Search Tree

    Given an array where elements are sorted in ascending order, convert it to a height balanced BST. 解题 ...

  7. ldconfig: /usr/lib/libpython2.6.so.1.0-gdb.py is not an ELF file - it has the wrong magic bytes at the start.

    https://bugzilla.redhat.com/show_bug.cgi?id=562980

  8. console和windows子系统

    https://blog.csdn.net/ilvu999/article/details/8050292

  9. springMVC+mybatis事务管理总结

    1.spring,mybatis事务管理配置与@Transactional注解使用: 概述事务管理对于企业应用来说是至关重要的,即使出现异常情况,它也可以保证数据的一致性.Spring Framewo ...

  10. Linux--sudo权限讲解

    sudo简介:sudo是linux系统管理指令,是允许系统管理员让普通用户执行一些或者全部的root命令的一个工具,如halt,reboot,su等等.这样不仅减少了root用户的登录 和管理时间,同 ...