oracle的基本术语

来源:互联网 发布:在线数字抽奖软件 编辑:程序博客网 时间:2024/05/18 03:04
  1. 数据字典

数据字典是Oracle数据库的重要组成部分。它由一系列拥有数据库元数据(metadata)信息的数据字典表和用户可以读取的数据

字典视图组成。存放有Oracle数据库所有的有关信息,主要包括:

     、系统的空间信息,即分配了多少空间,当前使用了多少空间等

     、数据库中所有模式对象的信息,如表,视图,族,同义词以及索引等。

     、例程运行的性能和统计信息。

     、Oracle用户的名字

     、用户访问或使用的审计信息。

     、用户以及角色被授予的权限信息。

     、列的约束信息的完整性。

     、列的缺省值。

        在Oracle数据库中,数据字典可以看作是一组表和视图结构。它们存放在SYSTEM表空间。

     2. 数据文件

一个Oracle数据库可以拥有一个或多个物理的数据文件,数据文件包含了全部数据库数据,逻辑数据库结构的数据也物理地

存储在数据库的数据文件中。

数据文件具有如下特征:

    、一个数据库可拥有多个数据文件,但一个数据文件只能对应一个数据库。

    、可以对数据文件进行设置,使其在数据库空间用完的情况下进行自动的扩展。

    、一个表空间(数据库存储的逻辑单位)可以由一个或多个数据文件组成。

      数据文件中的数据在需要时可以读取并存储在Oracle的内存存储区中。

      数据文件是用于存储数据库数据的文件,如表,索引数据等都物理地存储在数据文件中的。

 

    3.控制文件

控制库件控制文件是一个很小的二进制文件,它维护着数据库的全局物理结构,用以支持数据库成功的启动和运行。创建数据

库时,同时提供了与之对应的控制文件。Oracle不断的更新控制文件,所以只要数据库是打开的,控制文件就必须处于可写状

态。

每一个Oracle数据库有一个控制文件,它记录着数据库的物理结构,其中主要包含下列信息类型:

、数据库名称

、数据库数据文件和日志文件的名字和位置。

、数据库建立日期。

、日志历史。

、归档日志信息。

、表空间信息。

、数据文件脱机范围

、数据文件拷贝信息

、备份组和备份块信息

、备份数据文件和重做日志信息。

、当前日志序列数。

、检查点信息(CHECKPOINT)

     Oracle数据库的控制文件是数据库创建的同时创建的,在默认情况下,在数据库创建期间至少有一个控制文件爱你副本。

     每一次Oracle数据库的实例启动时,它的控制文件用于表示数据库和日志文件,当着手数据库操作时它们必须被打开。

    4.日志文件

     日志文件也称为重做日志文件(Redo Log File).重做日志文件用于记录对数据库的所有修改信息,修改信息包括用户对数据的

     修改,以及管理员对数据库结构的修改。重做日志文件是保证数据安全和数据备份与恢复的文件。

   日志的模式:

        归档模式(ARCHIVELOG)

        非归档模式(NOARCHIVELOG)

    Oracle数据库的物理存储结构

   数据文件,控制文件,日志文件还有一些其他的文件(参数文件,备份文件等)构成了Oracle数据库的物理存储结构。

  1. 表空间

表空间是一个或多个数据文件在逻辑上的统一组织,而数据文件是表空间在物理上的存在形式。没有数据文件的存在,表空间

就失去了存在的物理基础;而离开了表空间Oracle就无法获得数据文件的信息。无法访问到对应的数据文件,这样的数据文件

就称为了垃圾文件。

表空间是Oracle数据库中最大的逻辑结构。它提供了一套有效的组织数据的方法,是组织数据和进行空间分配的逻辑结构。

可以将表空间看作是数据对象的容器,简单地说,表空间就是一个或多个数据文件的集合。

 

一个数据库通常包含SYSTEM、SYSAUX和TEMP三个默认表空间,一个或多个临时表空间,还有一个撤销表空间和几个应

用程序专用的表空间。

    2.表空间的类型(system tablespace)

系统表空间包括SYSTEM和SYSAUX表空间,系统表空间是所有数据库必须且自动创建的,一般存放Oracle的数据字典表

及相应数据。

    3.永久表空间(permanent tablespace)

 永久表空间用于保存永久性数据,如系统数据,应用系统数据。每个用户都会被分配一个永久表空间,以便保存其相关数据。

除了撤销表(Undo)空间以外,相对于临时表空间而言,其他表空间就是永久表空间。

    4.临时表空间(temporary tablespace)

由于系统需要。例如在查询带有排序(Group by 等等)算法时使用会使用到临时表。所有一般安装之后只有一个TEMP

临时表空间。

    5.撤销表空间(Undo tablespace)

从9i后,提供了一种全新的撤销空间管理方式,从而使得DBA能狗很容易地管理撤销空间,即“自动撤销管理”。自动

撤销管理方式也称为SMU(System Managed Undo)方式,而回滚段管理方式称为RBU(Rollback Segments Undo)f方式。

在一个数据库中,只能采用一种撤销空间管理方式,而不能同时存在俩种撤销空间管理方式。

数据库采用哪一种撤销空间管理方式,是有参数UNDO_MANAGEMENT来确定的。如何设置该参数为“AUTO”在启动

数据库使用SMU方式;如果设置为MANUAL则在启动数据库时使用RBU方式。

    6. 大文件表空间和小文件表空间

从10g开始引入了大文件表空间,大文件表空间(bigfile tablespace)是为了超大型数据库设计。

小文件表空间(smallfile tablespace)是之前Oracle表空间在11g中的新名称,是默认创建的表空间类型。

  1. 表空间的状态
    1. 读写(Read-Write)状态

这是表空间的默认状态,任何具有表空间配额并拥有相关权限的用户均刻度写表空间。

    2.只读(Read-Only)状态

如果将表空间设置为只读状态,则任何用户(包括DBA)均无法向表空间写入数据,也无法修改表空间中的现有数据。这

种限制和权限无关。

    3.脱机(Offline)状态

在有多个应用表空间的数据库中,DBA可以通过将某个应用表空间设置为脱机状态,使表空间暂时不被用户访问。

    4.表空间的作用

      引入表空间概念具有以下作用:

         、控制用户所占用的空间配额。

         、控制数据库所占用的磁盘空间

         、可以将表空间设置成只读状态而保证大量的静态数据被修改。

         、能狗将一个表的数据和这个表的索引数据分别存储在不同的表空间中,也可以提高数据库的I/O性能。

         、可通过其将不同表的数据,分区表的不同分区的数据存储在不同的表空间中,可以提高数据库的I/O性能,

           并有利于进行数据库的部分备份和恢复等等管理工作。

         、表空间提供了一个备份和恢复的单位,Oracle提供了按表空间备份和恢复的功能。

    5.段

段(segment)用于存储表空间中某一种特定的具有独立存储结构的对象的所有数据,它由一个或多个区组成。

段包含表空间中一种指定类型的逻辑存储结构,段是数据区的集合,每个段都分配给特定的数据结构,存储在相同的表空间中。

在表空间中,一个段包含来自多个文件的数据区,段可以跨越数据文件,按照段中所存储数据的特征和用途的不同,可以将段

分成数据段、索引段,临时段和回滚段几种类型

    6.数据段(data segment)

           用于存储表中的所有数据。当某个用户创建表时,就会在该用户的默认表空间中为该表分配一个表名相同的数据

段,以便将来存储所有数据,显然一个表空间中创建了几个表,该表空间中就有几个数据段。

    数据段随着数据的增加而逐渐的变大。段的增大过程是通过增加区的个数而实现的,每次增加一个区,每个区的大小

是块的整倍数。

    7.索引段(index segment)

索引段用于存储索引的所有数据,当用户用create index语句创建索引或在定义约束自动创建索引时,就会在该用户的默认

表空间中为该索引分配一个与索引名相同的索引段,以便将来存储该索引的所有数据。

    8.临时段(temporary segment)

用于存储排序操作所产生的临时数据,当用户使用ORDER BY 语句进行排序或汇总时,在该用户的临时表空间中自动创

建一个临时段,排序结束,临时段自动消除。

  1. 回滚段(rollback segment)

回滚段用于存储用户数据被修改之前的值,以便在特定条件下回滚用户对数据的修改。

  1.  区(Extent)

区是由物理上连续存放的块构成的。区是Oracle存储分配的最小单位,由一个或多个块组成,一个或多个区将组成段。

  1. 数据块(Block)

数据块是最小的数据管理单位,也是执行输入输出操作时的最小单位。相应地,操作系统执行输入输出操作的最小单单位是操

做系统块。Oracle块的大小是操作系统块大小的整数倍。也就是CREATE DATABASE创建数据库实例时指定,其最小为2K,

最大为64k。

数据块中可以存储各种类型的数据,如表数据,索引数据和族数据等。不论数据块存放何种类型的数据,每个数据块都具有相

同的结构,Oracle数据块的基本结构由以下几个部分组成:

、块头部:块头部包含块中的一般的属性信息,如块的物理地址,块所属的段的类型等。

、表目录:若块中存储的数据是表数据(表中的一行或多行记录),则表目录存储于该表的信息。

、行目录:存储该块中有效的行信息。

、空闲空间:数据块中尚未使用的存储空间,当向数据中添加新数据时,减少空闲空间。

、行空间:行空间是块已经使用的存储空间,在行空间中存储了表或索引的数据。

 

块头部,表目录和行目录共同组成块的头部信息区。块的头部信息区中并不存放实际的数据块数据,它只起到引导系统

读取数据的作用。

原创粉丝点击