Oracle存储结构-表空间

表空间  

  oracle文件注意的问题

    控制文件,redolog文件,数据文件----一定要放在存储上

    问题:银行用户,集群切换失败,原因是数据库中部分的文件未放到存储上

  存储三种组织形式:文件系统、ASM、裸设备

oracle有表以及实实在在的文件dbf

  一个表空间由一个或多个文件组成。

  表空间的空间大小就是多个文件大小的总和

  为了使用的方便,在表与文件之间建立的中间层

oracle中存在的表空间

  select * from dba_tablespaces;//查看所有表空间

  表空间放的是表,表里有数据

    1.SYSTEM 系统表空间,这里面放了一下系统自身的信息,系统信息放在数据字典,数据字典是表,表放在表空间

    2.SYSAUX 系统辅助表空间,也是系统信息

    注意:这两个表空间必须同时存在,否则数据库启动不了

    3.UNDOTBS1 系统表空间,存放的是数据块改变之前的数据 

      4.TEMP 临时表空间,存放的是数据库的临时数据,Oracle在排序的时候,PGA空间不够,会用到TEMP空间,这个表丢失可以重建

系统级别的表空间:SYSTEM SYSAUX UNDOTBS1 TEMP

        5.USERS  用于存放用户数据的表空间

     6.EXAMPLE 存放的是一些样例表空间

        这两个表空间一般不用,如有需要是可以另外创建的

     在实际生产中,会根据需求自行创建user空间

表空间的状态:

    1.PERMANENT 里面的数据不会丢失 SYSTEM SYSAUX 

    2.UNDO 放的是UNDO数据

    3.TEMPORARY 可以丢失 

select * from dba_data_files;

    oracle数据库通过划分多个不同的表空间,进而对数据进行管理

    一个表空间中包括一个或者多个数据文件

    一个数据文件仅属于一个表空间

段区块

  段:一个表是一个段

    段存在于表空间中

    如果表分区了,那么每个分区是一段

    索引也是一个段

    临时段

    undo段

    log段

    二进制大分区段

  段是由区的集合构成

  区是数据块的集合,物理上连续的一个或者多个块

  数据块将映射到磁盘块中

      Oracle每次是以一个区为单位给段分配空间

逻辑和物理数据库结构

  一个数据库由多个表空间组成

  一个表空间由一个或者多个数据文件/段组成

  一个段由一个或者多个区组成

  一个区由一个或者多个数据块组成

  一个数据块可以由一个或者多个系统(OS)块组成

------------------------------------------------------------------------

  一个表空间仅属于一个数据库

  一个段仅属于一个表空间

  一个区仅属于一个段

  一个数据块仅属于一个区

查看用户 select * from dba_users;

  每个用户下都有一堆段

  可以理解为oracle通过用户将所有的段组织起来

查看所有的段的情况  select * from dba_segments;

oracle数据块默认8k

Oracle段:表段、表分区段、索引段、索引分区段、临时段、撤销段、二进制大对象段

  

  

  

  

  

    

  

    

  

  

  

  

  

原文地址:https://www.cnblogs.com/KAJIA1/p/12082482.html