Oracle 11g笔记——表空间的体系结构

表空间的体系结构
Oracle中主要的表空间分类:永久表空间、撤销表空间UNDO、临时表空间。

1、永久表空间包含一些段,这些段在超出会话或事务的持续时间后持续存在。如:SYSTEM表空间及SYSAUX表空间
   (1)SYSTEM表空间:用户段绝对不应该驻留在SYSTEM表空间中。Oracle10g开始可以指定默认的永久表空间,
        如果手动创建数据库,则要确保指定默认永久表空间和默认临时表空间,
        DEFAULT TABLESPACE USERS DATAFILE '/U03/ORACLE11G/ORADATA/DB1/USERS01.DBF' SIZE 50M REUSE
        DEFAULT TEMPORARY TABLESPACE TEMPTS1 TEMPFILE '/U01/ORACLE11G/ORADATA/DB1/TEMP01.DBF' SIZE 20M REUSE

        完整语句:
        CREATE DATABASE DB1
  USER SYS IDENTIFIED BY PWD1
  USER SYSTEM IDENTIFIED BY PWD2
  LOGFILE GROUP 1 ('/U02/ORACLE11G/ORADATA/DB1/REDO01.LOG') SIZE 100M,
   GROUP 2 ('/U04/ORACLE11G/ORADATA/DB1/REDO02.LOG') SIZE 100M,
   GROUP 3 ('/U06/ORACLE11G/ORADATA/DB1/REDO03.LOG') SIZE 100M
  MAXLOGFILES 5
  MAXLOGMEMBERS 5
  MAXLOGHISTORY 1
  MAXDATAFILES 100
  MAXINSTANCES 1
  CHARACTER SET US7ASCII
  NATIOANL CHARACTER SET AL16UTF16
  DATAFILE '/U01/ORACLE11G/ORADATA/DB1/SYSTEM01.DBF' SIZE 325M REUSE EXTENT MANAGEMENT LOCAL
  SYSAUX DATAFILE '/U01/ORACLE11G/ORADATA/DB1/SYSAUX01.DBF' SIZE 325M REUSE
  DEFAULT TABLESPACE USERS DATAFILE '/U03/ORACLE11G/ORADATA/DB1/USERS01.DBF' SIZE 50M REUSE
                DEFAULT TEMPORARY TABLESPACE TEMPTS1 TEMPFILE '/U01/ORACLE11G/ORADATA/DB1/TEMP01.DBF' SIZE 20M REUSE
  UNDO TABLESPACE UNDOTBS DATAFILE '/U02/ORACLE11G/ORADATA/DB1/USERS01.DBF' SIZE 200M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED;

        从Oracle 10g开始,SYSTEM表空间默认为本地管理,由位图段管理,位图段在表空间的第一个数据文件的第一部分中。
         
   (2)SYSAUX表空间,不应该有任何用户段

2、撤销表空间
   (1)多个撤销表空间可以存在于一个数据库中,但在任何给定的时间内只有一个撤销表空间可以是活动的。
   (2)撤销表空间用于回滚事务,以及提供与DML语句同时运行在相同的表或表集上的SELECT语句的读一致性,并支持大量ORACLE闪回特性,如闪回查询(FLASH QUERY)
   (3)UNDO_RETENTION参数:分配撤销表空间的大小


3、临时表空间
   数据库中可以有多个临时表空间联机并处于活动状态,oralce10g可支持临时表空间组。之前两个会话都使用相同的临时表空间,从而潜在地造成性能问题。
   临时表空间组向具有多个会话的单个用户提供如下功能:对每个会话使用不同的实际临时表空间。
 查看临时表空间数据文件位置:select file_name from dba_temp_files;

 1:创建临时表空间
 create temporary tablespace user_temp 
 tempfile 'Q:\oracle\product\10.2.0\oradata\Test\xyrj_temp.dbf'
 size 50m 
 autoextend on 
 next 50m maxsize 20480m 
 extent management local; 
 
 2:创建数据表空间
 create tablespace user_data 
 logging 
 datafile 'Q:\oracle\product\10.2.0\oradata\Test\xyrj_data.dbf'
 size 50m 
 autoextend on 
 next 50m maxsize 20480m 
 extent management local; 
 
 第3步:创建用户并指定表空间
 create user username identified by password 
 default tablespace user_data 
 temporary tablespace user_temp; 
 
 第4步:给用户授予权限
 grant connect,resource,dba to username;

       
 创建临时表空间组,将建vb的临时表空间化分到组。
        alter tablespace user_temp tablespace group tempgrp;
 alter tablespace user_temp2 tablespace group tempgrp;
 alter tablespace user_temp3 tablespace group tempgrp;
     
        将数据库的默认临时表空间改为tempgrp
 alter database default temporary tablespace tempgrp;

        删除表空间
 alter tablespace user_temp tablespace group '';

        创建用户并指定临时表空间组
 create user username identified by password 
 default tablespace user_data 
 temporary tablespace tempgrp; 

        查看用户所属表空间
        select username,default_tablespace,temporary_tablespace from dba_users where username='username';

        查看临时表空间组内成员
 select group_name,tablespace_name from dba_tablespace_groups;


4、大文件表空间
 大文件表空间减轻了数据库管理,因为它只包含一个数据文件。最多可以为128T

 

优化灵活体系结构(OFA)
 提供了减轻Oracle软件和数据库文件维护工作的指导原则,并且改进了数据库的性能,即适当地放置数据库文件,从而最小化I/O瓶颈。
       (1)非ASM环境,单独的物理设备上至少要有3个文件系统才能实现OFA的推荐标准。
            从顶层开始,安装点的推荐格式是,/,其中可以是一个或多个字母,是两个或三个数字。
            如:/u01,/u02,/u03,/u04
            软件可执行文件:每个单独产品名的软件可执行文件驻留在目录///中,
     如:/u01/app/oracle或/u01/app/apache

       (2)ASM环境
     ASM文件名:+///..
     select file#,name from v$datafile;
   name: +DATA/dw/datafile/system.256.622426913
     select file#,name from v$controlfile;
   name: +DATA/dw/controlfile/current.260.622427059
     select file#,name from v$logfile;
   name: +DATA/dw/onlinelog/group_3.263.622427143

Oracle安装表空间
 系统中默认创建的几个表空间:

    SYSTEM     必需安装   永久表空间

    SYSAUX      必需安装   永久表空间

    USERS       可不安装   永久表空间

    UNDOTBS1 必需安装  永久表空间

    EXAMPLE   可不安装  永久表空间

    TEMP          必需安装  临时表空间


 

你可能感兴趣的:(Oracle11g)