存储结构
数据存储:
               
表空间和数据文件
        逻辑上是以表空间形式存在
        物理数据文件形式存在
        表空间和数据文件的关系:  一个表空间可以有多个数据文件,一个数据文件只能属于一个表空间表空间由很多个逻辑数据块组成,参数为db_block_size,大小为2-32K,默认为8k。特定数目相邻数据块构成一个区
OMForacle managed files 根据数据库对象而不是文件名指定文件操作)
1、 db_create_file_dest:定义数据文件和临时文件的默认文件系统目录的位置
2、 DB_CREATE_ONLINE_LOG_DEST_n:定义重做日志文件和控制文件的创建位置
3、 DB_RECOVERY_FILE_DEST  定义 RMAN 备份位置
 如不使用OMF,则操作都需要指明文件  如:create table test datafile='/home/oracle/01.dbf'
· 表空间的管理方法:1、数据字典管理;2、本地管理(推荐)。
系统预配置数据库中的表空间
    system:管理database。需dba权限
     sysaux:system辅助表空间
     temp:如果执行的 SQL 语句需要创建临时段(如大规模排序或创建索引),则可以使用临时表空间。默认且最好只有一个
     undotabs1:数据库服务器用于存储还原信息的还原表空间。在创建数据库时创建的
 users:用于存储永久用户对象和数据。在预配置数据库中,USERS 表空间是用于存储非系统用户创建的所有对象的默认表空间。对于 SYS 和 SYSTEM 用户(系统用户),默认的永久表空间依然是 SYSTEM
EXAMPLE:包含创建数据库时可以安装的示例方案
创建表空间:(SQL
      CREATE BIGFILE TABLESPACE "T" DATAFILE '/u01/app/oracle/oradata/orcl/t01.dbf ' SIZE 10M REUSE AUTOEXTEND ON NEXT 1M MAXSIZE 50M LOGGING EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO SEGMENT SPACE MANAGEMENT AUTO 
注:  SMALLFILE 小文件表空间(默认)BIGFILE  大文件表空间
      CREATE   TEMPORARY TABLESPACE,创建临时表空间
      datafile 指定文件物理路径
      size 表空间的大小
      REUSE 该文件可以重用  
      AUTOEXTEND ON 开启自动扩展  
      NEXT 1M MAXSIZE 50M  下次增长1M 最大50M
      LOGGING 记录日志(默认)nologging 不记录日志
      EXTENT MANAGEMENT LOCAL UNIFORM SIZE 1M  区的管理是本地管理(默认是自动管理)区空间不足的时候,自动分配空间大小。
      EGMENT SPACE MANAGEMENT AUTO   空间的管理  manual  默认自动管理
表空间管理
 重命名  rename
 更改状态 
     Read Write(读写):表空间已联机,可进行读写。
     Read Only(只读):可以完成(提交或回退)现有的事务处理,但是,不允许对表空间中的对象进一步执行数据操纵语言 (DML) 操作。
 Offline(脱机):normalimmediatetemporary三种
 Egalter tablespace IT offline immediate
 
 更改大小:add
    通过向表空间添加数据文件更改现有数据文件的大小
    Eg: alter tablespace tt add datafile '/u01/tt02.dbf' size 10m;
 
 删除表空间
 1表空间没有内容    dorp tablespace 表空间名
 2、表空间内容 删除表空间和内容:dorp tablespace 表空间名 INCLUDING CONTENTS
 如果数据文件没有启用OMF,则需要使用操作系统命令删除物理上的文件,如果使用OMF,会自动帮你删除,或者可以使用参数including datafiles 
 
 存储选项
 Thresholds(阈值)
 默认阀值
 指定阀值
 禁用阀值
对表空间执行其他的操作
 Add Datafile(添加数据文件)
 Create Like(类似创建)
 Generate DDL(生成 DDL):生成用于创建表空间的数据定义语言(DDL) 语句。
 Make Locally Managed(设置为本地管理):单向,不可逆
 Make Readonly(只读模式):停止对表空间的所有写操作。
 Make Writable(可写模式):允许对表空间中的对象启动DML 活动和其它写活动
 Place Online(联机)
 Reorganize(重组)
 Run Segment Advisor(运行段指导)
 Show Dependencies(显示相关性):显示此表空间依赖的对象,或依赖于此表空间的对象。
 Show Tablespace Contents(显示表空间内容)
 Take Offline(脱机):使当前联机的表空间不可用。
 
删除表空间
 概述:必须具有DROP TABLESPACE 系统权限才能删除表空间。删除表空间时,会删除关联数据库控制文件中的文件指针。如果使用OMF,删除数据文件
查看表空间信息
各个表空间对应的动态视图:
      dba_tablespaces    v$tablespace 
      dba_data_files    v$datafile
      dba_temp_files    v$tempfile
Eg:  desc tablespace;   select * from v$tablespace
 SELECT D.STATUS STATUS,
       D.TABLESPACE_NAME NAME,
       D.CONTENTS TYPE,
       D.EXTENT_MANAGEMENT EXTENTMANAGEMENT,
       TO_CHAR(NVL(A.BYTES / 1024 / 1024, 0), '99,999,990.900') TABLE_SIZE,
       TO_CHAR(NVL(A.BYTES - NVL(F.BYTES, 0), 0) / 1024 / 1024,
               '99999999.999') || '/' ||
       TO_CHAR(NVL(A.BYTES / 1024 / 1024, 0), '99999999.999') USED,
       TO_CHAR(NVL((A.BYTES - NVL(F.BYTES, 0)) / A.BYTES * 100, 0),
               '990.00') RATE
  FROM SYS.DBA_TABLESPACES D,
       (SELECT TABLESPACE_NAME, SUM(BYTES) BYTES
          FROM DBA_DATA_FILES
         GROUP BY TABLESPACE_NAME) A,
       (SELECT TABLESPACE_NAME, SUM(BYTES) BYTES
          FROM DBA_FREE_SPACE
         GROUP BY TABLESPACE_NAME) F
 WHERE D.TABLESPACE_NAME = A.TABLESPACE_NAME(+)
   AND D.TABLESPACE_NAME = F.TABLESPACE_NAME(+)
   AND NOT
        (D.EXTENT_MANAGEMENT LIKE 'LOCAL' AND D.CONTENTS LIKE 'TEMPORARY');
ASM
概述
 可移植的高性能集群文件系统
 可管理 Oracle 数据库文件
 可将数据分布到各个磁盘中以平衡负载
 可镜像数据
功能和优点
 对文件而不是逻辑卷进行条带化
 提供联机重新配置磁盘和动态重新平衡功能
 可用来调整重新平衡速度
 为每个文件提供冗余
 仅支持 Oracle 数据库文件
 可识别集群
可自动安装