首先,你需要明白的一点是:数据库的物理结构是由数据库的操作系统文件所决定,每一个Oracle数据库是由三种类型的文件组成:数据文件、日志文件和控制文件。数据库的文件为数据库信息提供真正的物理存储。 
每一个Oracle数据库有一个或多个物理的数据文件(data file)。一个数据库的数据文件包含全部数据库数据。逻辑数据库结构(如表、索引等)的数据物理地存储在数据库的数据文件中。数据文件通常为*.dbf格式,例如:userCIMS.dbf。数据文件有下列特征:①、一个数据文件仅与一个数据库联系;②、一旦建立,数据文件只增不减;③、一个表空间(数据库存储的逻辑单位)由一个或多个数据文件组成。 
其次,我们再来叙述一下Oracle的逻辑结构:Oracle的逻辑结构包括表空间(tablespace),段(segment),数据块(data block)以及模式对象(schema object)。 
Oracle数据库在逻辑上是由多个表空间组成的,表空间在物理上包含一个或多个数据文件。而数据文件大小是块大小的整数倍;表空间中存储的对象叫段,比如数据段,索引段和回退段。段由区组成,区是磁盘分配的最小单位。段的增大是通过增加区的个数来实现的。每个区的大小是数据块大小的整数倍,区的大小可以不相同;数据块是数据库中的最小的I/O单位,同时也是内存数据缓冲区的单位,及数据文件存储空间单位。块的大小由参数DB_BLOCK_SIZE设置,其值应设置为操作系统块大小的整数倍。

⑴、表空间(tablespace) 
表空间是数据库中最大的逻辑单位,每一个表空间由一个或多个数据文件组成,一个数据文件只能与一个表空间相联系。每一个数据库都有一个SYSTEM表空间,该表空间是在数据库创建或数据库安装时自动创建的,用于存储系统的数据字典表,程序系统单元,过程函数,包和触发器等,也可用于存储用户数据表,索引对象。表空间具有在线(online)和离线(offline)属性,可以将除SYSTME以外的其他任何表空间置为离线。 
⑵、段(segment) 
数据库的段可以分为四类:数据段、索引段、回退段和临时段。 
⑶、区 
区是磁盘空间分配的最小单位。磁盘按区划分,每次至少分配一个区。区存储与段中,它由连续的数据块组成。 
⑷、数据块 
数据块是数据库中最小的数据组织单位与管理单位,是数据文件磁盘存储空间单位,也是数据库I/O的最小单位,数据块大小由DB_BLOCK_SIZE参数决定,不同的Oracle版本DB_BLOCK_SIZE的默认值是不同的。 
⑸、模式对象 
模式对象是一种应用,包括:表、聚簇、视图、索引序列生成器、同义词、哈希、程序单元、数据库链等。

最后,在来说一下Oracle的用户、表空间和数据文件的关系: 
一个用户可以使用一个或多个表空间,一个表空间也可以供多个用户使用。用户和表空间没有隶属关系,表空间是一个用来管理数据存储的逻辑概念,表空间只是和数据文件发生关系,数据文件是物理的,一个表空间可以包含多个数据文件,而一个数据文件只能隶属一个表空间。

总结一下:解释数据库、表空间、数据文件、表、数据的最好办法就是想象一个装满东西的柜子。数据库其实就是柜子,柜中的抽屉是表空间,抽屉中的文件夹是数据文件,文件夹中的纸是表,写在纸上的信息就是数据。

Oracle 表空间和数据文件之间的关系的更多相关文章

  1. 【转】Oracle 表空间与数据文件

    --============================== --Oracle 表空间与数据文件 --============================== /* 一.概念 表空间:是一个或 ...

  2. Oracle 表空间与数据文件

    -============================== --Oracle 表空间与数据文件 --============================== /* 一.概念 表空间:是一个或多 ...

  3. 【基础】Oracle 表空间和数据文件

    多个表空间的优势:1.能够将数据字典与用户数据分离出来,避免由于字典对象和用户对象保存在同一个数据文件中而产生的I/O冲突2.能够将回退数据与用户数据分离出来,避免由于硬盘损坏而导致永久性的数据丢失3 ...

  4. Oracle的表空间、数据文件、用户

          每一个Oracle数据库都是由三种类型的文件组成:数据文件(Data File).日志文件(Log File)和控制文件(Control File).数据库的文件为数据库信息提供真正的物理 ...

  5. oracle维护表空间和数据文件

    1:重要参考 wiki 2: oracle doc 表空间参考 3:来自dba-oracle的参考 26,27,28,29 一:oracle 表空间概念 表空间是联系数据库的物理磁盘(数据文件)和逻辑 ...

  6. ORACLE 收缩表空间的数据文件

    http://blog.itpub.net/29345367/viewspace-1816427/ 方法一: 在实际的应用中经常会遇到TRUNCATE或者DELETE表中的数据后发现表空间并没有将空间 ...

  7. Oracle的表空间和数据文件

    一. 概念 表空间:是一个或多个数据文件的逻辑集合 表空间逻辑存储对象: 永久段-->如表与索引 临时段-->如临时表数据与排序段 回滚段-->用于事物回滚或闪回内存的撤销数据 表空 ...

  8. 十四、oracle 数据库管理--管理表空间和数据文件

    一.概念表空间是数据库的逻辑组成部分.从物理上讲,数据库数据存放在数据文件中:从逻辑上讲,数据库数据则是存放在表空间中,表空间由一个或多个数据文件组成. 二.数据库的逻辑结构oracle中逻辑结构包括 ...

  9. ORACLE - 管理表空间和数据文件

    ORACLE表空间是一个逻辑分区,一个数据文件只能属于一个表空间,一个表空间可以拥有多个数据文件. 一般情况下,如果一个实例分配给多个应用使用,需要创建不同的表空间,每个用户使用自己的表空间. 一.表 ...

随机推荐

  1. linux 3.10中完成量的使用

    完成量是基于等待队列设计的,所以显然不能在中断上下文使用完成量. struct completion { unsigned int done; wait_queue_head_t wait; }; 我 ...

  2. 在postgresqlz中查看与删除索引

    查看索引 select * from pg_indexes where tablename='tbname';      或者     select * from pg_statio_all_inde ...

  3. Linux删除ORACLE数据库用户失败提示ORA-01940解决方法

    操作环境 SuSE11+Oracle11gR2 问题现象 删除ORACLE数据库用户失败,提示ORA-01940: cannot drop a user that is currently conne ...

  4. [jQ]使用jQuery将多条数据插入模态框的方法

    ---------------------------------------------------------------------------------------------------- ...

  5. C# windows服务:如何获取服务程序所在的文件夹

    AppDomain.CurrentDomain.BaseDirectory 就这么一句话

  6. Javascript中call、apply之我见

    一.call和apply定义. 1.Call 语法:call([thisObj[,arg1[, arg2[, [,.argN]]]]]) 参数 thisObj 可选项.将被用作当前对象的对象. arg ...

  7. Java学习03 (第一遍)

    Java是面向对象的语言,函数是面向过程语言的叫法,比如C语言,在Java中一般称之为方法. 构造方法的作用是实例化对象,每个类中都有,即使不写程序也会分配一个默认无参数的构造方法. Java中都是对 ...

  8. 吴裕雄 19-Mysql 连接的使用

    JOIN 按照功能大致分为如下三类:INNER JOIN(内连接,或等值连接):获取两个表中字段匹配关系的记录.LEFT JOIN(左连接):获取左表所有记录,即使右表没有对应匹配的记录.RIGHT ...

  9. ubuntu 解决“无法获得锁 /var/lib/dpkg/lock -open (11:资源暂时不可用)”的方法

    原文链接:https://www.cnblogs.com/kaid/p/8616385.html 在ubuntu系统的termial下,用apt-get install 安装软件的时候,如果在未完成下 ...

  10. azkaban编译以及安装(调度系统)

    编译源码 下载azkaban源码 git clone https://github.com/azkaban/azkaban.git   jdk要求是1.8以上版本 export JAVA_HOME=/ ...