zoukankan      html  css  js  c++  java
  • oracle数据库的结构

    Oracle是一种关系数据库管理系统(RDBMS)。关系数据库是按照二维表结构方式组织的数据集合,每个表体现了集合理论中定义的数学概念 ── 关系。

    数据库(Database)是一个数据容器,它包含了表、索引、视图、过程、函数、包等对象,并对其进行统一的管理。

    一、数据库的内部结构:

    1.表空间(TABLESPACE)

    作用:

    1、合理利用资源

    2、提高系统的效率和性能

    system 表空间:存放oralce内部结构和数据字典

    sysaux 表空间:存放新增的表空间

    undo 表空间:存放撤销信息

    users 表空间: 存放用户信息的(数据库管理员的信息)

    temp 表空间: 提供用户临时使用

    2. 表(TABLE)

    列 字段(列名 长度 类型)

    行 记录

    3. 约束条件(CONSTRAINT)

    1、主键约束(primayr key):最多只有一个,唯一的

    2、缺省( default ): 默认值

    3、检查(check):保证列的值符合一定条件

    4、唯一性(unique):保证列的值唯一

    5、外键(foreign key):参照 delete cascade

    4.分区(PARTITION)

    分成小表,叫分区

    5.索引(INDEX)

    帮助快速查找,保证列值得唯一性

    6. 用户(USER)

    只得是用户拥有的数据库对象

    7.方案(SCHEMA)

    用户的方案,可以操纵哪些表

    8.同义词

    别名

    9.权限及角色(ROLE)

     赋予某个角色一些增删改查的权限

    10.段(SEGMENT)、盘区(EXTENT)和数据块(DATA BLOCK)

    段 就是数据库对象,它消耗存储空间,如表、索引、回滚段等。当创建表的时候,将创建一个表段,当创建一个分区表时,即在每个分区上创建一个段,当创建索引 时,将创建一个索引段,每一个消耗存储空间的对象最终被存储在一个单一的段中,有回滚段,临时段,聚簇段、索引段等。一个段可以拥有来自许多不通数据文件 中的盘区

    盘区由块组成,一个块是在Oracle中空间分配的最小单元,是Oracle读写磁盘的对象,Oracle中的块通常有3个常见的大小 ,2K ,4K,8K。

    一个段是由一个或多个盘区所组成,一个盘区是由一些连续分配的块。

    数据块(Oracle Data Blocks,本文简称为“块”,是Oracle最小的存储单位,Oracle数据存放在“块”中。一个块占用一定的磁盘空间。特别注意的是,这里的“块”是Oracle的“数据块”,不是操作系统的“块”。Oracle请求的数据量不到一块,Oracle也会读取整个块。所以说,“块”是Oracle读写数据的最小单位或者最基本的单位

    二、数据库外部结构

    1、数据文件(DATAFILE):

    在创建一个新的表空间的时候,在内存里给它分配一个文件夹

    如:datafile 'd:/hello1.dbf'

    2、重做日志文件(REDO LOG FILES)

    当数据被破坏时,用于恢复

    3、控制文件(CONTROL FILES)

    用于记录数据库的外部结构

    1、数据库的名称和构建时间

    2、数据库文件与重置日志和名称的所在位置

    3、日志记录的序列码

     4. 表

     用来存储和操作数据的结构,由行和列组成

    5.表结构 :

    表结构:由固定的列组成

    记录:行数据组成

    字段:由数据项构成

    关键字:区分行记录

    它们之间的关系 :

    1、一对一

    2、一对多

    3、多对多

    6. 实例

    数据库实例是用于和操作系统进行联系的标识,也就是说数据库和操作系统之间的交互使用的是数据库实例。

    7.系统全局区

    当激活Oracle 12C数据库时,系统会先在内存内规划一个固定区域,用来存储每位使用者所需存取的数据以及Oracle 12C运作时必备的系统信息。

    这个区域称为系统全局区(System Global Area),俗称SGA 。(一组共享的内存结构,存储里实例的数据和控制的文件信息)

    (1)数据块缓存区。 用来存储读取数据块副本

    (2)字典缓存区。存储用户账号、数据文件名、盘区位置、表说明、权限等

    (3)重做日志缓冲区:用于恢复

    (4)SQL共享池:用于存储字典以及库缓存

    程序全局区(PGA)

    内存区,包含每个服务器的数据和控制信息

    8.后台进程

    数据库的物理结构和存储结构之间的关系是由后台进程来维持。

    主要的背景处理程序下。

    (1)DBWR(数据库写入程序):

    (2)LGWR(日志写入程序):

    (3)SMON(系统监控程序):

    (4)PMON(进程监控程序):

    (5)CKPT(检查点进程):

    (6)RECO(恢复进程):

    (7)ARCH(归档进程):

  • 相关阅读:
    数组的练习
    java基础类和对象
    字符串的练习
    二分查找算法
    Python-charle+fiddler
    python-week1-postman+jemter-soapUI
    OBB盒的实现
    Bounding volume
    OSG动画学习
    OSG 自定义数据类型 关键帧动画
  • 原文地址:https://www.cnblogs.com/zhangpichun-7/p/13124301.html
Copyright © 2011-2022 走看看