逻辑存储结构

一:逻辑存储结构简介


image

                           image

  • 一个表空间对应着一个或者多个数据文件;
  • 一个表空间对应着一个或者多个段。
  • 一个段对应一个或者多个区
  • 一个区对应多个块
  • 一个oracle块对应多个操作系统块
  • 数据库文件是由操作系统数据库构成
  • 块是最小的储存单位;
  • 区是最小的分配空间大小的单位

image


1:逻辑存储层次结构

imageimage

image

  • 一个段只能存在一个表空间里面
  • 段是由区组成的。区可以来源于多个数据文件。

image





2:逻辑空间管理

image

image

image

image


image



image

SYS@orcl> desc dba_extents;
 Name                                      Null?    Type
 ----------------------------------------- -------- ----------------------------
 OWNER                                              VARCHAR2(30)
 SEGMENT_NAME                                       VARCHAR2(81)
 PARTITION_NAME                                     VARCHAR2(30)
 SEGMENT_TYPE                                       VARCHAR2(18)
 TABLESPACE_NAME                                    VARCHAR2(30)
 EXTENT_ID                                          NUMBER
 FILE_ID                                            NUMBER
 BLOCK_ID                                           NUMBER
 BYTES                                              NUMBER
 BLOCKS                                             NUMBER
 RELATIVE_FNO                                       NUMBER

SYS@orcl> create tablespace my datafile 'a1.dbf' size 20m;

Tablespace created.

SYS@orcl> select SEGMENT_NAME,SEGMENT_TYPE from dba_extents where tablespace_name ='my';

no rows selected

SYS@orcl> desc dba_tablespaces;
 Name                                      Null?    Type
 ----------------------------------------- -------- ----------------------------
 TABLESPACE_NAME                           NOT NULL VARCHAR2(30)
 BLOCK_SIZE                                NOT NULL NUMBER
 INITIAL_EXTENT                                     NUMBER
 NEXT_EXTENT                                        NUMBER
 MIN_EXTENTS                               NOT NULL NUMBER
 MAX_EXTENTS                                        NUMBER
 MAX_SIZE                                           NUMBER
 PCT_INCREASE                                       NUMBER
 MIN_EXTLEN                                         NUMBER
 STATUS                                             VARCHAR2(9)
 CONTENTS                                           VARCHAR2(9)
 LOGGING                                            VARCHAR2(9)
 FORCE_LOGGING                                      VARCHAR2(3)
 EXTENT_MANAGEMENT                                  VARCHAR2(10)
 ALLOCATION_TYPE                                    VARCHAR2(9)
 PLUGGED_IN                                         VARCHAR2(3)
 SEGMENT_SPACE_MANAGEMENT                           VARCHAR2(6)
 DEF_TAB_COMPRESSION                                VARCHAR2(8)
 RETENTION                                          VARCHAR2(11)
 BIGFILE                                            VARCHAR2(3)
 PREDICATE_EVALUATION                               VARCHAR2(7)
 ENCRYPTED                                          VARCHAR2(3)
 COMPRESS_FOR                                       VARCHAR2(12)

SYS@orcl> select SEGMENT_SPACE_MANAGEMENT from dba_tablespaces where TABLESPACE_NAME='MY';

SEGMEN
------
AUTO

SYS@orcl>


image

image

image

image


image

image


image




image

image

image

SYS@orcl> create table tt_1(id int) pctfree 10 pctused 40;

Table created.

SYS@orcl>

image



image

SYS@orcl> select SEGMENT_SPACE_MANAGEMENT from dba_tablespaces where TABLESPACE_NAME='MY';

SEGMEN
------
AUTO

SYS@orcl> create table tt_1(id int) pctfree 10 pctused 40;

Table created.

SYS@orcl> desc  dba_tables;
 Name                                      Null?    Type
 ----------------------------------------- -------- ----------------------------
 OWNER                                     NOT NULL VARCHAR2(30)
 TABLE_NAME                                NOT NULL VARCHAR2(30)
 TABLESPACE_NAME                                    VARCHAR2(30)
 CLUSTER_NAME                                       VARCHAR2(30)
 IOT_NAME                                           VARCHAR2(30)
 STATUS                                             VARCHAR2(8)
 PCT_FREE                                           NUMBER
 PCT_USED                                           NUMBER
 INI_TRANS                                          NUMBER
 MAX_TRANS                                          NUMBER
 INITIAL_EXTENT                                     NUMBER
 NEXT_EXTENT                                        NUMBER
 MIN_EXTENTS                                        NUMBER
 MAX_EXTENTS                                        NUMBER
 PCT_INCREASE                                       NUMBER
 FREELISTS                                          NUMBER
 FREELIST_GROUPS                                    NUMBER
 LOGGING                                            VARCHAR2(3)
 BACKED_UP                                          VARCHAR2(1)
 NUM_ROWS                                           NUMBER
 BLOCKS                                             NUMBER
 EMPTY_BLOCKS                                       NUMBER
 AVG_SPACE                                          NUMBER
 CHAIN_CNT                                          NUMBER
 AVG_ROW_LEN                                        NUMBER
 AVG_SPACE_FREELIST_BLOCKS                          NUMBER
 NUM_FREELIST_BLOCKS                                NUMBER
 DEGREE                                             VARCHAR2(10)
 INSTANCES                                          VARCHAR2(10)
 CACHE                                              VARCHAR2(5)
 TABLE_LOCK                                         VARCHAR2(8)
 SAMPLE_SIZE                                        NUMBER
 LAST_ANALYZED                                      DATE
 PARTITIONED                                        VARCHAR2(3)
 IOT_TYPE                                           VARCHAR2(12)
 TEMPORARY                                          VARCHAR2(1)
 SECONDARY                                          VARCHAR2(1)
 NESTED                                             VARCHAR2(3)
 BUFFER_POOL                                        VARCHAR2(7)
 FLASH_CACHE                                        VARCHAR2(7)
 CELL_FLASH_CACHE                                   VARCHAR2(7)
 ROW_MOVEMENT                                       VARCHAR2(8)
 GLOBAL_STATS                                       VARCHAR2(3)
 USER_STATS                                         VARCHAR2(3)
 DURATION                                           VARCHAR2(15)
 SKIP_CORRUPT                                       VARCHAR2(8)
 MONITORING                                         VARCHAR2(3)
 CLUSTER_OWNER                                      VARCHAR2(30)
 DEPENDENCIES                                       VARCHAR2(8)
 COMPRESSION                                        VARCHAR2(8)
 COMPRESS_FOR                                       VARCHAR2(12)
 DROPPED                                            VARCHAR2(3)
 READ_ONLY                                          VARCHAR2(3)
 SEGMENT_CREATED                                    VARCHAR2(3)
 RESULT_CACHE                                       VARCHAR2(7)

SYS@orcl> select PCT_FREE,PCT_USED from dba_tables where TABLE_NAME='TT_1';

  PCT_FREE   PCT_USED
---------- ----------
        10         40

SYS@orcl> create table tt_2(id int) ;

Table created.

SYS@orcl> select PCT_FREE,PCT_USED from dba_tables where TABLE_NAME='TT_2';

  PCT_FREE   PCT_USED
---------- ----------
        10         40

SYS@orcl>


二:数据块概述

image



1:数据块和操作系统块

image


  • oracle数据块与系统块的对应关系是一对多的关系;


image


             数据库块大小

image

             表空间块大小

image

SYS@orcl> show parameter db_block_size

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
db_block_size                        integer     8192
SYS@orcl>


2:数据块格式

image


  • 数据块是由数据块头和数据块主体组成。
  • 数据块主体:是由数据构成
  • 当不断向数据库插入数据的时候,数据库空闲空间不断变小,同时,数据块头的占用空间也在不断的变大。即:数据块头的占用空间大小是随着数据插入量的变化而变化的。块头的大小也不是一成不变的。
  • 数据块头则有:数据块地址(即:这个数据块的地址是什么。)、表目录(即:这个数据块中存放的是哪几个表的数据)、行目录(即:这个数据块存放的是哪一个表的那几行的数据)、(ITL SLOT)事务槽(这事务槽是存放在数据块头部空间的,要想使用数据块的时候必须要获得这事务槽的资源。只有获取这事务槽资源之后,才能向数据块中插入数据。)
  • 在数据块当中都是以行判断的方式储存数据的。




             数据块开销

image

image




             行格式

image

  • 行片段:是由行头和列的数据 组成;
  • 行头则是由:行的内容,列数,id号,rowid 号,列的长度,列的值


  • image

image

image

image

image





3:数据块压缩

image

image

image

---查看数据文件名称
SYS@orcl> select name from v$datafile;

NAME
--------------------------------------------------------------------------------
/u01/app/oracle/oradata/orcl/system01.dbf
/u01/app/oracle/oradata/orcl/sysaux01.dbf
/u01/app/oracle/oradata/orcl/undotbs01.dbf
/u01/app/oracle/oradata/orcl/users01.dbf
/u01/app/oracle/oradata/orcl/example01.dbf
/u01/app/oracle/oradata/orcl/datafile1.dbf
/u01/app/oracle/oradata/orcl/ts1.dbf
/u01/app/oracle/oradata/orcl/datafile3.dbf
/u01/app/oracle/oradata/orcl/datafile4.dbf
/u01/app/oracle/oradata/orcl/datafile5.dbf
/u01/app/oracle/oradata/orcl/datafilebig_1.dfb
/u01/app/oracle/oradata/orcl/ts2.dbf
/u01/app/oracle/oradata/orcl/ts3.dbf
/u01/app/oracle/oradata/orcl/tbsp_1.dbf
/u01/app/oracle/product/11.2.0/db_1/dbs/a1.dbf

15 rows selected.
---压缩表空间
SYS@orcl> create tablespace compress_01 datafile '/u01/app/oracle/oradata/orcl/compress_01.dbf' size 20m default compress for oltp;

Tablespace created.

SYS@orcl>


  • 如果一个表空间有压缩方式及该表空间下的表也有压缩方式,则该表优先使用表的压缩方式进行数据压缩。
  • 如果一个表空间有压缩方式而该表空间下的表没有创建压缩方式,则该表的数据则以表空间的压缩方式进行压缩数据。
  • 如果一个表空间没有创建压缩方式,而该表空间下的表创建了压缩方式,则该表的数据以表的压缩方式进行数据的压缩。


---创建一个大文件的压缩表空间
SYS@orcl> create bigfile tablespace compress_02 datafile '/u01/app/oracle/oradata/orcl/compress_02.dbf' size 20m default compress for oltp;

Tablespace created.
---创建一个普通表空间,然后修改普通表空间为压缩表空间
SYS@orcl> create tablespace test datafile '/u01/app/oracle/oradata/orcl/test_01.dbf' size 20m;

Tablespace created.
---修改普通表空间为压缩表空间
SYS@orcl> alter tablespace test default compress for oltp;

Tablespace altered.
----查询表空间压缩新 
SYS@orcl> select tablespace_name ,compress_for from dba_tablespaces;
TABLESPACE_NAME                COMPRESS_FOR
------------------------------ ------------
SYSTEM
SYSAUX
UNDOTBS1
TEMP
USERS
EXAMPLE
TBS_TEST1
TBS_TEST_3
TBS_TEST4
TBS_TEST5
TBS_BIG_1

TABLESPACE_NAME                COMPRESS_FOR
------------------------------ ------------
TEMP_1
TBS_EXAMPLE
TEMP_01
TP1
TP2
TS_1
TS_2
TS_3
TBSP_1
MY
COMPRESS_01                    OLTP    --压缩表空间

TABLESPACE_NAME                COMPRESS_FOR
------------------------------ ------------
COMPRESS_02                    OLTP    --压缩表空间
TEST                           OLTP    --压缩表空间

24 rows selected.
----取消表空间的压缩
 SYS@orcl> alter tablespace test default nocompress;

Tablespace altered.
--再次查询
SYS@orcl> select tablespace_name ,compress_for from dba_tablespaces;

TABLESPACE_NAME                COMPRESS_FOR
------------------------------ ------------
SYSTEM
SYSAUX
UNDOTBS1
TEMP
USERS
EXAMPLE
TBS_TEST1
TBS_TEST_3
TBS_TEST4
TBS_TEST5
TBS_BIG_1

TABLESPACE_NAME                COMPRESS_FOR
------------------------------ ------------
TEMP_1
TBS_EXAMPLE
TEMP_01
TP1
TP2
TS_1
TS_2
TS_3
TBSP_1
MY
COMPRESS_01                    OLTP

TABLESPACE_NAME                COMPRESS_FOR
------------------------------ ------------
COMPRESS_02                    OLTP
TEST

24 rows selected.


SYS@orcl> create tablespace test2 datafile '/u01/app/oracle/oradata/orcl/test02.dbf' size 20m autoextend on next 10m extent management local uniform size 1m;

Tablespace created.

----在 compress_01 表空间里创建表

--1:在压缩表空间里创建 oltp 压缩表

SYS@orcl> create table t4 compress for oltp tablespace COMPRESS_01 as select * from scott.emp;

Table created.
---在压缩表空间里创建非压缩表
SYS@orcl> create table t5 tablespace compress_01 as select * from scott.emp;

Table created.


---对压缩表和非压缩表进行分析

SYS@orcl> analyze table t5 compute statistics;

Table analyzed.

SYS@orcl> analyze table t4 compute statistics;

Table analyzed.

 ----结论:在 iltp压缩表空间里创建表 如果不指定默认的压缩方式,默认是按照表空间的压缩方式oltp方式来进行压缩

SYS@orcl> select table_name ,compress_for from dba_tables where table_name in ('T4','T5');

TABLE_NAME                     COMPRESS_FOR
------------------------------ ------------
T5                             OLTP
T4                             OLTP

---创建表
SYS@orcl> create table t6 compress tablespace compress_01 as select * from scott.emp;

Table created.

---结论:如果在oltp压缩表空间内创建表的时候,指定压缩方式为 basic compress ,那么创建的表是按照 basic compression 压缩 说明表级别的压缩方式会覆盖表空间级别的压缩方式

SYS@orcl> select table_name ,compress_for from dba_tables where table_name in ('T4','T5','T6');

TABLE_NAME                     COMPRESS_FOR
------------------------------ ------------
T5                             OLTP
T4                             OLTP
T6                             BASIC

 ----压缩索引

SYS@orcl> create index ind_t4 on t4(empno,ename) tablespace compress_01;

Index created.
---结论:虽然我们是在 压缩表空间里的创建索引,但是索引仍然是 disabled 没有压缩,所以如果要压缩索引,必须手动指明 comress 
SYS@orcl> create index ind_t5 on t5(empno,ename) tablespace compress_01;

Index created.
 
SYS@orcl> set linesize 500 ;
SYS@orcl> select index_name ,compression,leaf_blocks,tablespace_name from user_indexes where table_name in ('T4','T5');

INDEX_NAME                     COMPRESS LEAF_BLOCKS TABLESPACE_NAME
------------------------------ -------- ----------- ------------------------------
IND_T5                         DISABLED           1 COMPRESS_01
IND_T4                         DISABLED           1 COMPRESS_01

SYS@orcl>



4:数据块的空间管理

imageimage


            数据块中的可用空间百分比

image

image

            优化数据块中的可用空间

image










            合并碎片空间

image

image

image


image








            行链接和行迁移

image

创建居多大的非标准数据库来处理行链接的问题。

image



image


image

image


image



三:扩展区概述

image


1:分配扩展区

image

image


image


image

SYS@orcl> set linesize 50;
SYS@orcl> desc dba_extents;
 Name                    Null?    Type
 ----------------------- -------- ----------------
 OWNER                            VARCHAR2(30)
 SEGMENT_NAME                     VARCHAR2(81)
 PARTITION_NAME                   VARCHAR2(30)
 SEGMENT_TYPE                     VARCHAR2(18)
 TABLESPACE_NAME                  VARCHAR2(30)
 EXTENT_ID                        NUMBER
 FILE_ID                          NUMBER
 BLOCK_ID                         NUMBER
 BYTES                            NUMBER
 BLOCKS                           NUMBER
 RELATIVE_FNO                     NUMBER



SYS@orcl> create table tt2(id int);

Table created.


SYS@orcl> set linesize 200;
SYS@orcl> select SEGMENT_NAME,TABLESPACE_NAME,EXTENT_ID,BLOCKS from dba_extents where SEGMENT_NAME='TT2';

SEGMENT_NAME                                                                      TABLESPACE_NAME                 EXTENT_ID     BLOCKS
--------------------------------------------------------------------------------- ------------------------------ ---------- ----------
TT2                                                                               SYSTEM                                  0          8

SYS@orcl>


SYS@orcl> desc dba_segments;
 Name                    Null?    Type
 ----------------------- -------- ----------------
 OWNER                            VARCHAR2(30)
 SEGMENT_NAME                     VARCHAR2(81)
 PARTITION_NAME                   VARCHAR2(30)
 SEGMENT_TYPE                     VARCHAR2(18)
 SEGMENT_SUBTYPE                  VARCHAR2(10)
 TABLESPACE_NAME                  VARCHAR2(30)
 HEADER_FILE                      NUMBER
 HEADER_BLOCK                     NUMBER
 BYTES                            NUMBER
 BLOCKS                           NUMBER
 EXTENTS                          NUMBER
 INITIAL_EXTENT                   NUMBER
 NEXT_EXTENT                      NUMBER
 MIN_EXTENTS                      NUMBER
 MAX_EXTENTS                      NUMBER
 MAX_SIZE                         NUMBER
 RETENTION                        VARCHAR2(7)
 MINRETENTION                     NUMBER
 PCT_INCREASE                     NUMBER
 FREELISTS                        NUMBER
 FREELIST_GROUPS                  NUMBER
 RELATIVE_FNO                     NUMBER
 BUFFER_POOL                      VARCHAR2(7)
 FLASH_CACHE                      VARCHAR2(7)
 CELL_FLASH_CACHE                 VARCHAR2(7)

SYS@orcl> create table tt3 as  select * from dba_users;

Table created.

SYS@orcl> select  extents from dba_segments  where segment_name='TT3';

   EXTENTS
----------
         1

SYS@orcl>


image


image



2: 释放扩展区

image



3:扩展区的存储参数

image

image


四:  段概述

image


1:用户段

image


            创建用户段

image

image

image

image




2:临时段

image


           为查询分配临时段

image


           为临时表及其索引分配临时段

image


3:撤销段

image


           撤销段和事务

image

            image

image

image

     image

image


               image




           事务回滚

image



4:段空间和高水位标记

image

image imageimage

image

image

image

image


image



                  降低 高水位线(即:清空高水位线:删除表如何在创建表、压缩表)

高水位线 默认情况下是不会下降。只能手动进行下降操作。

---创建表
SYS@orcl>  create table test3 as select * from dba_objects where 1 = 2;

Table created.

---查看表数据
SYS@orcl> select * from test3;

no rows selected
---查看表中分配块,区大小 :查看表分区和数据块信息:

 SYS@orcl> SELECT segment_name, segment_type,blocks, extents FROM dba_segments WHERE segment_name = 'TEST3';

SEGMENT_NAME                                                                      SEGMENT_TYPE           BLOCKS    EXTENTS
--------------------------------------------------------------------------------- ------------------ ---------- ----------
TEST3                                                                             TABLE                       8          1

---:从结果得知: 此时表没有数据。分配了1个区 默认数据块大小为8个。此时数据块高水位线为0

--blocks -- 分配数据块数
--extents -- 分配区块数
--3、分析表TEST3表 
SYS@orcl> ANALYZE TABLE TEST3 ESTIMATE STATISTICS;

Table analyzed.
--目的是:得到该表的一些更准确的信息
--查询TEST3表高水位线 
SYS@orcl> SELECT blocks,empty_blocks,num_rows FROM user_tables  WHERE table_name = 'TEST3';


    BLOCKS EMPTY_BLOCKS   NUM_ROWS
---------- ------------ ----------
         0            7          0

---从结果来看:此时分配的是0个数据块,是因为此时该表还没有数据信息 ,此时有7个数据块是可以用的e.有1个数据块默认作为数据块的头部信息了。


---此时向该表插入数据
SYS@orcl>  insert into test3  select * from dba_objects;
75301 rows created.


SYS@orcl> commit;

Commit complete.

SYS@orcl>


--6、重新分析表 、
SYS@orcl> ANALYZE TABLE TEST3 ESTIMATE STATISTICS;

Table analyzed.

SYS@orcl>


---7、再次查看表中分配块,区大小 
 

SYS@orcl> SELECT blocks,empty_blocks,num_rows FROM user_tables  WHERE table_name = 'TEST3';

    BLOCKS EMPTY_BLOCKS   NUM_ROWS
---------- ------------ ----------
       1068           83      75280

   ----此时:该表的搞水位线值为:1068

---删除数据
SYS@orcl> delete  from   test3;

75301 rows deleted.
SYS@orcl>   commit ;


SYS@orcl> select  * from  test3;

no rows selected


----8:在对表进行分析。在查看表的高水位线值。
SYS@orcl> ANALYZE TABLE TEST3 ESTIMATE STATISTICS;

Table analyzed.

SYS@orcl> SELECT blocks,empty_blocks,num_rows FROM user_tables  WHERE table_name = 'TEST3';

    BLOCKS EMPTY_BLOCKS   NUM_ROWS
---------- ------------ ----------
      1068           83          0

---从查询结果来看:表的高水位线是不会随着表数据量的减少而减少。只会无线增大并且保持最大值。 

                        清空表高水位线方式一: truncate :

SYS@orcl> truncate table test3;

Table truncated.

SYS@orcl> ANALYZE TABLE TEST3 ESTIMATE STATISTICS;

Table analyzed.

SYS@orcl> SELECT blocks,empty_blocks,num_rows FROM user_tables  WHERE table_name = 'TEST3';

    BLOCKS EMPTY_BLOCKS   NUM_ROWS
---------- ------------ ----------
         0            7          0

SYS@orcl>

------衍生出来的另外一种清空表高水位线的操作方式:

若想保留所有的数据:则需要先把表中的数据全部导出后,然后在 truncate 表 ,接着再把导出的所有数据导入到表中。



                        清空表高水位线方式二:表的压缩操作

---查看数据文件路径信息
SYS@orcl> select name from v$datafile;

NAME
--------------------------------------------------------------------------------
/u01/app/oracle/oradata/orcl/system01.dbf
/u01/app/oracle/oradata/orcl/sysaux01.dbf
/u01/app/oracle/oradata/orcl/undotbs01.dbf
/u01/app/oracle/oradata/orcl/users01.dbf
/u01/app/oracle/oradata/orcl/example01.dbf
/u01/app/oracle/oradata/orcl/datafile1.dbf
/u01/app/oracle/oradata/orcl/ts1.dbf
/u01/app/oracle/oradata/orcl/datafile3.dbf
/u01/app/oracle/oradata/orcl/datafile4.dbf
/u01/app/oracle/oradata/orcl/datafile5.dbf
/u01/app/oracle/oradata/orcl/datafilebig_1.dfb

NAME
--------------------------------------------------------------------------------
/u01/app/oracle/oradata/orcl/ts2.dbf
/u01/app/oracle/oradata/orcl/ts3.dbf
/u01/app/oracle/oradata/orcl/tbsp_1.dbf
/u01/app/oracle/oradata/orcl/compress_01.dbf
/u01/app/oracle/oradata/orcl/compress_02.dbf
/u01/app/oracle/oradata/orcl/test_01.dbf
/u01/app/oracle/oradata/orcl/test02.dbf

18 rows selected.

---创建表空间
SYS@orcl> CREATE TABLESPACE mytbs8 DATAFILE '/u01/app/oracle/oradata/orcl/mytbs08.dbf' size 20m SEGMENT SPACE MANAGEMENT AUTO;

Tablespace created.
---创建表
SYS@orcl> create table test2 tablespace mytbs8 as select * from dba_objects where 1 = 2;
--插入数据
insert into test2  select * from dba_objects;
---分析表
ANALYZE TABLE TEST2 ESTIMATE STATISTICS;


Table created.

SYS@orcl>
75302 rows created.

SYS@orcl> SYS@orcl>
Table analyzed.
---查看表的高水位线  
SYS@orcl> SYS@orcl> SELECT blocks, empty_blocks, num_rows  FROM user_tables  WHERE table_name = 'TEST2';

    BLOCKS EMPTY_BLOCKS   NUM_ROWS
---------- ------------ ----------
      1126           26      77725
----删除100条数据
SYS@orcl> delete from test2 where rownum<10000;

9999 rows deleted.

SYS@orcl> commit;

Commit complete.
---分析表
SYS@orcl> ANALYZE TABLE TEST2 ESTIMATE STATISTICS;

Table analyzed.
---查看表的高水位线
SYS@orcl> SELECT blocks, empty_blocks, num_rows  FROM user_tables  WHERE table_name = 'TEST2';

    BLOCKS EMPTY_BLOCKS   NUM_ROWS
---------- ------------ ----------
      1126           26      65960
---允许表进行行迁移
SYS@orcl> alter table test2 enable row movement;

Table altered.
--对表进行收缩
SYS@orcl> alter table test2 shrink space cascade;

Table altered.
---分析表
SYS@orcl> ANALYZE TABLE TEST2 ESTIMATE STATISTICS;

Table analyzed.
---查看表的高水位线
SYS@orcl> SELECT blocks, empty_blocks, num_rows  FROM user_tables  WHERE table_name = 'TEST2';

    BLOCKS EMPTY_BLOCKS   NUM_ROWS
---------- ------------ ----------
       938           30      65299

SYS@orcl>


高水位线的影响:在做全表扫描的时候,会从高水位线的位置向下查询表的数据。如果高水位线向下有很大比例的空位置,则很大程度会影响表查询性能。


五:表空间概述

image

  • 表空间是逻辑概念
  • 物理文件是:数据文件和临时数据文件
  • 表空间与数据文件的对应关系是:一对一或者一对多的对应关系、
  • 表空间分为 永久表空间和临时表空间
  • 永久表空间意味着数据是永久存放的。临时表空间意味着表空间的数据是临时存放的。





1:永久表空间

imageimage




           SYSTEM 表空间

image

image

image


           SYSAUX(辅助) 表空间


image


           UNDO (撤销)表空间

image

  •                    自动撤销管理模式

    imageimage

  •                     自动撤销保留

image


---查看表空间
SYS@orcl> select name from v$tablespace;

NAME
------------------------------
SYSTEM
SYSAUX
UNDOTBS1
USERS
TEMP
EXAMPLE
TBS_TEST1
TEMP_01
TBS_TEST_3
TBS_TEST4
TBS_TEST5

NAME
------------------------------
TBS_BIG_1
TEMP_1
TBS_EXAMPLE
TP1
TP2
TS_1
TS_2
TS_3
TBSP_1
COMPRESS_01
COMPRESS_02

NAME
------------------------------
TEST
TEST2
MYTBS8

25 rows selected.
---删除表空间
SYS@orcl> drop tablespace ts_3;

Tablespace dropped.
--删除表空间及其数据文件及其内容SYS@orcl> drop tablespace mytbs8 including contents and datafiles;

Tablespace dropped.

SYS@orcl>



2:临时表空间

image



3:表空间模式

image


           读/写和只读表空间

image

  •                 读/写 模式

image



  •                只读模式

image


           联机和脱机表空间

image

image


image



4:表空间文件大小

image



5:总结

image

image






6:实验


           1:查看表空间的段的管理方式,区的分配

SYS@orcl> select SEGMENT_SPACE_MANAGEMENT,EXTENT_MANAGEMENT,ALLOCATION_TYPE,TABLESPACE_NAME from dba_tablespaces ;

SEGMEN EXTENT_MAN ALLOCATIO TABLESPACE_NAME
------ ---------- --------- ------------------------------
MANUAL LOCAL      SYSTEM    SYSTEM
AUTO   LOCAL      SYSTEM    SYSAUX
MANUAL LOCAL      SYSTEM    UNDOTBS1
MANUAL LOCAL      UNIFORM   TEMP
AUTO   LOCAL      SYSTEM    USERS
AUTO   LOCAL      SYSTEM    EXAMPLE
AUTO   LOCAL      UNIFORM   TBS_TEST1
MANUAL LOCAL      SYSTEM    TBS_TEST_3
AUTO   LOCAL      SYSTEM    TBS_TEST4
AUTO   LOCAL      SYSTEM    TBS_TEST5
AUTO   LOCAL      SYSTEM    TBS_BIG_1

SEGMEN EXTENT_MAN ALLOCATIO TABLESPACE_NAME
------ ---------- --------- ------------------------------
MANUAL LOCAL      UNIFORM   TEMP_1
MANUAL LOCAL      UNIFORM   TBS_EXAMPLE
MANUAL LOCAL      UNIFORM   TEMP_01
MANUAL LOCAL      UNIFORM   TP1
MANUAL LOCAL      UNIFORM   TP2
AUTO   LOCAL      SYSTEM    TS_1
AUTO   LOCAL      SYSTEM    TS_2
AUTO   LOCAL      SYSTEM    TBSP_1
AUTO   LOCAL      SYSTEM    COMPRESS_01
AUTO   LOCAL      SYSTEM    COMPRESS_02
AUTO   LOCAL      SYSTEM    TEST

SEGMEN EXTENT_MAN ALLOCATIO TABLESPACE_NAME
------ ---------- --------- ------------------------------
AUTO   LOCAL      UNIFORM   TEST2

23 rows selected.

SYS@orcl>


           2:查看表空间的自动扩展

SYS@orcl> select  TABLESPACE_NAME ,AUTOEXTENSIBLE from dba_data_files ;

TABLESPACE_NAME                AUTOEXTENSIBLE 
------------------------------ --------------
USERS                          YES
UNDOTBS1                       YES
SYSAUX                         YES
SYSTEM                         YES
EXAMPLE                        YES
TBS_TEST1                      NO
TBS_TEST_3                     YES
TBS_TEST4                      NO
TBS_TEST5                      YES
TBS_BIG_1                      NO
TS_1                           NO

TABLESPACE_NAME                AUT
------------------------------ --------------
TS_2                           NO
TBSP_1                         YES
COMPRESS_01                    NO
COMPRESS_02                    NO
TEST                           NO
TEST2                          YES

17 rows selected.



           3:查看数据库的特性


SYS@orcl> col PROPERTY_NAME  for a20;
SYS@orcl> col PROPERTY_NAME  for a20;
SYS@orcl> col DESCRIPTION  for a100;
SYS@orcl> set linesize 300;
SYS@orcl> select * from database_properties;

PROPERTY_NAME        PROPERTY_VALUE       DESCRIPTION
-------------------- -------------------- ----------------------------------------------------------------------------------------------------
DICT.BASE            2                    dictionary base tables version #
DEFAULT_TEMP_TABLESP GROUP1               Name of default temporary tablespace
ACE

DEFAULT_PERMANENT_TA TBS_TEST1            Name of default permanent tablespace
BLESPACE

DEFAULT_EDITION      ORA$BASE             Name of the database default edition
Flashback Timestamp  GMT                  Flashback timestamp created in GMT
TimeZone


PROPERTY_NAME        PROPERTY_VALUE       DESCRIPTION
-------------------- -------------------- ----------------------------------------------------------------------------------------------------
TDE_MASTER_KEY_ID
DST_UPGRADE_STATE    NONE                 State of Day Light Saving Time Upgrade
DST_PRIMARY_TT_VERSI 14                   Version of primary timezone data file
ON

DST_SECONDARY_TT_VER 0                    Version of secondary timezone data file
SION

DEFAULT_TBS_TYPE     SMALLFILE            Default tablespace type
NLS_LANGUAGE         AMERICAN             Language
NLS_TERRITORY        AMERICA              Territory

PROPERTY_NAME        PROPERTY_VALUE       DESCRIPTION
-------------------- -------------------- ----------------------------------------------------------------------------------------------------
NLS_CURRENCY         $                    Local currency
NLS_ISO_CURRENCY     AMERICA              ISO currency
NLS_NUMERIC_CHARACTE .,                   Numeric characters
RS

NLS_CHARACTERSET     ZHS16GBK             Character set
NLS_CALENDAR         GREGORIAN            Calendar system
NLS_DATE_FORMAT      DD-MON-RR            Date format
NLS_DATE_LANGUAGE    AMERICAN             Date language
NLS_SORT             BINARY               Linguistic definition
NLS_TIME_FORMAT      HH.MI.SSXFF AM       Time format

PROPERTY_NAME        PROPERTY_VALUE       DESCRIPTION
-------------------- -------------------- ----------------------------------------------------------------------------------------------------
NLS_TIMESTAMP_FORMAT DD-MON-RR HH.MI.SSXF Time stamp format
                     F AM

NLS_TIME_TZ_FORMAT   HH.MI.SSXFF AM TZR   Time with timezone format
NLS_TIMESTAMP_TZ_FOR DD-MON-RR HH.MI.SSXF Timestamp with timezone format
MAT                  F AM TZR

NLS_DUAL_CURRENCY    $                    Dual currency symbol
NLS_COMP             BINARY               NLS comparison
NLS_LENGTH_SEMANTICS BYTE                 NLS length semantics
NLS_NCHAR_CONV_EXCP  FALSE                NLS conversion exception

PROPERTY_NAME        PROPERTY_VALUE       DESCRIPTION
-------------------- -------------------- ----------------------------------------------------------------------------------------------------
NLS_NCHAR_CHARACTERS AL16UTF16            NCHAR Character set
ET

NLS_RDBMS_VERSION    11.2.0.3.0           RDBMS version for NLS parameters
GLOBAL_DB_NAME       ORCL                 Global database name
EXPORT_VIEWS_VERSION 8                    Export views revision #
WORKLOAD_CAPTURE_MOD                      CAPTURE implies workload capture is in progress
E

WORKLOAD_REPLAY_MODE                      PREPARE implies external replay clients can connect; REPLAY implies workload replay is in progress
NO_USERID_VERIFIER_S 6396C58AB17AE007E9A7

PROPERTY_NAME        PROPERTY_VALUE       DESCRIPTION
-------------------- -------------------- ----------------------------------------------------------------------------------------------------
ALT                  289C0FE59274

DBTIMEZONE           00:00                DB time zone

36 rows selected.

SYS@orcl>


                创建一个新的临时表空间tem;并设置为默认表空间;然后在删除该默认表空间tem。在修改默认表空间为 temp ;在删除新创建的tem表空间

SYS@orcl> select name from v$datafile;

NAME
----------------------------------------------------------------------------------------------------
/u01/app/oracle/oradata/orcl/system01.dbf
/u01/app/oracle/oradata/orcl/sysaux01.dbf
/u01/app/oracle/oradata/orcl/undotbs01.dbf
/u01/app/oracle/oradata/orcl/users01.dbf
/u01/app/oracle/oradata/orcl/example01.dbf
/u01/app/oracle/oradata/orcl/datafile1.dbf
/u01/app/oracle/oradata/orcl/ts1.dbf
/u01/app/oracle/oradata/orcl/datafile3.dbf
/u01/app/oracle/oradata/orcl/datafile4.dbf
/u01/app/oracle/oradata/orcl/datafile5.dbf
/u01/app/oracle/oradata/orcl/datafilebig_1.dfb

NAME
----------------------------------------------------------------------------------------------------
/u01/app/oracle/oradata/orcl/ts2.dbf
/u01/app/oracle/oradata/orcl/tbsp_1.dbf
/u01/app/oracle/oradata/orcl/compress_01.dbf
/u01/app/oracle/oradata/orcl/compress_02.dbf
/u01/app/oracle/oradata/orcl/test_01.dbf
/u01/app/oracle/oradata/orcl/test02.dbf

17 rows selected.

SYS@orcl> create temporary tablespace tem tempfile 'tem.dbf' size 20m ;

Tablespace created.


SYS@orcl> alter database default temporary tablespace tem;

Database altered.

SYS@orcl>  SELECT name FROM V$TABLESPACE;

NAME
----------------------------------------------------------------------------------------------------
SYSTEM
SYSAUX
UNDOTBS1
USERS
TEMP
EXAMPLE
TBS_TEST1
TEMP_01
TBS_TEST_3
TBS_TEST4
TBS_TEST5

NAME
----------------------------------------------------------------------------------------------------
TBS_BIG_1
TEMP_1
TBS_EXAMPLE
TP1
TP2
TS_1
TS_2
TEM
TBSP_1
COMPRESS_01
COMPRESS_02

NAME
----------------------------------------------------------------------------------------------------
TEST
TEST2

24 rows selected.

SYS@orcl> drop tablespace tem;
drop tablespace tem
*
ERROR at line 1:
ORA-12906: cannot drop default temporary tablespace


SYS@orcl> alter database default temporary tablespace temp;

Database altered.


SYS@orcl> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
SYS@orcl> startup
ORACLE instance started.

Total System Global Area  523108352 bytes
Fixed Size                  1346052 bytes
Variable Size             381683196 bytes
Database Buffers          134217728 bytes
Redo Buffers                5861376 bytes
Database mounted.
Database opened.
SYS@orcl> drop tablespace tem;

Tablespace dropped.

SYS@orcl> select name from v$tablespace;

NAME
------------------------------
SYSTEM
SYSAUX
UNDOTBS1
USERS
TEMP
EXAMPLE
TBS_TEST1
TEMP_01
TBS_TEST_3
TBS_TEST4
TBS_TEST5

NAME
------------------------------
TBS_BIG_1
TEMP_1
TBS_EXAMPLE
TP1
TP2
TS_1
TS_2
TBSP_1
COMPRESS_01
COMPRESS_02
TEST

NAME
------------------------------
TEST2

23 rows selected.

SYS@orcl>



           4:查看临时表空间组

SYS@orcl> select * from dba_tablespace_groups;

GROUP_NAME                     TABLESPACE_NAME
------------------------------ ------------------------------
GROUP1                         TEMP
GROUP1                         TEMP_1
GROUP1                         TP1
GROUP1                         TP2

SYS@orcl>


           5:查询数据库包含的表空间信息


SYS@orcl> col name for a30;
SYS@orcl> SELECT name FROM V$TABLESPACE;

NAME
------------------------------
SYSTEM
SYSAUX
UNDOTBS1
USERS
TEMP
EXAMPLE
TBS_TEST1
TEMP_01
TBS_TEST_3
TBS_TEST4
TBS_TEST5

NAME
------------------------------
TBS_BIG_1
TEMP_1
TBS_EXAMPLE
TP1
TP2
TS_1
TS_2
TBSP_1
COMPRESS_01
COMPRESS_02
TEST

NAME
------------------------------
TEST2

23 rows selected.

SYS@orcl>


           6:查询表空间及数据文件的信息

SYS@orcl> col  FILE_NAME for a70;
SYS@orcl> col TABLESPACE_NAME for a20;
SYS@orcl> SELECT FILE_NAME,TABLESPACE_NAME FROM DBA_DATA_FILES;

FILE_NAME                                                              TABLESPACE_NAME
---------------------------------------------------------------------- --------------------
/u01/app/oracle/oradata/orcl/users01.dbf                               USERS
/u01/app/oracle/oradata/orcl/undotbs01.dbf                             UNDOTBS1
/u01/app/oracle/oradata/orcl/sysaux01.dbf                              SYSAUX
/u01/app/oracle/oradata/orcl/system01.dbf                              SYSTEM
/u01/app/oracle/oradata/orcl/example01.dbf                             EXAMPLE
/u01/app/oracle/oradata/orcl/datafile1.dbf                             TBS_TEST1
/u01/app/oracle/oradata/orcl/datafile3.dbf                             TBS_TEST_3
/u01/app/oracle/oradata/orcl/datafile4.dbf                             TBS_TEST4
/u01/app/oracle/oradata/orcl/datafile5.dbf                             TBS_TEST5
/u01/app/oracle/oradata/orcl/datafilebig_1.dfb                         TBS_BIG_1
/u01/app/oracle/oradata/orcl/ts1.dbf                                   TS_1

FILE_NAME                                                              TABLESPACE_NAME
---------------------------------------------------------------------- --------------------
/u01/app/oracle/oradata/orcl/ts2.dbf                                   TS_2
/u01/app/oracle/oradata/orcl/tbsp_1.dbf                                TBSP_1
/u01/app/oracle/oradata/orcl/compress_01.dbf                           COMPRESS_01
/u01/app/oracle/oradata/orcl/compress_02.dbf                           COMPRESS_02
/u01/app/oracle/oradata/orcl/test_01.dbf                               TEST
/u01/app/oracle/oradata/orcl/test02.dbf                                TEST2

17 rows selected.

SYS@orcl>


           7:查询DBA_DATA_FILES 视图以确定是否启用AUTOEXTEND

SYS@orcl> SELECT FILE_NAME,AUTOEXTENSIBLE FROM DBA_DATA_FILES;

FILE_NAME                                                              AUT
---------------------------------------------------------------------- ---
/u01/app/oracle/oradata/orcl/users01.dbf                               YES
/u01/app/oracle/oradata/orcl/undotbs01.dbf                             YES
/u01/app/oracle/oradata/orcl/sysaux01.dbf                              YES
/u01/app/oracle/oradata/orcl/system01.dbf                              YES
/u01/app/oracle/oradata/orcl/example01.dbf                             YES
/u01/app/oracle/oradata/orcl/datafile1.dbf                             NO
/u01/app/oracle/oradata/orcl/datafile3.dbf                             YES
/u01/app/oracle/oradata/orcl/datafile4.dbf                             NO
/u01/app/oracle/oradata/orcl/datafile5.dbf                             YES
/u01/app/oracle/oradata/orcl/datafilebig_1.dfb                         NO
/u01/app/oracle/oradata/orcl/ts1.dbf                                   NO

FILE_NAME                                                              AUT
---------------------------------------------------------------------- ---
/u01/app/oracle/oradata/orcl/ts2.dbf                                   NO
/u01/app/oracle/oradata/orcl/tbsp_1.dbf                                YES
/u01/app/oracle/oradata/orcl/compress_01.dbf                           NO
/u01/app/oracle/oradata/orcl/compress_02.dbf                           NO
/u01/app/oracle/oradata/orcl/test_01.dbf                               NO
/u01/app/oracle/oradata/orcl/test02.dbf                                YES

17 rows selected.


           8:查询数据文件的基本信息

SYS@orcl> col name for a100;
SYS@orcl> SELECT name,file#,status,bytes,checkpoint_change# last_scn FROM v$datafile;

NAME                                                                                                      FILE# STATUS       BYTES   LAST_SCN
---------------------------------------------------------------------------------------------------- ---------- ------- ---------- ----------
/u01/app/oracle/oradata/orcl/system01.dbf                                                                     1 SYSTEM   786432000    6645207
/u01/app/oracle/oradata/orcl/sysaux01.dbf                                                                     2 ONLINE   891289600    6645207
/u01/app/oracle/oradata/orcl/undotbs01.dbf                                                                    3 ONLINE   256901120    6645207
/u01/app/oracle/oradata/orcl/users01.dbf                                                                      4 ONLINE     5242880    6645207
/u01/app/oracle/oradata/orcl/example01.dbf                                                                    5 ONLINE   362414080    6645207
/u01/app/oracle/oradata/orcl/datafile1.dbf                                                                    6 ONLINE    10485760    6645207
/u01/app/oracle/oradata/orcl/ts1.dbf                                                                          7 ONLINE    10485760    6645207
/u01/app/oracle/oradata/orcl/datafile3.dbf                                                                    8 ONLINE   104857600    6645207
/u01/app/oracle/oradata/orcl/datafile4.dbf                                                                    9 ONLINE    20971520    6645207
/u01/app/oracle/oradata/orcl/datafile5.dbf                                                                   10 ONLINE    62914560    6645207
/u01/app/oracle/oradata/orcl/datafilebig_1.dfb                                                               11 ONLINE  1073741824    6645207

NAME                                                                                                      FILE# STATUS       BYTES   LAST_SCN
---------------------------------------------------------------------------------------------------- ---------- ------- ---------- ----------
/u01/app/oracle/oradata/orcl/ts2.dbf                                                                         12 ONLINE    10485760    6645207
/u01/app/oracle/oradata/orcl/tbsp_1.dbf                                                                      14 ONLINE    20971520    6645207
/u01/app/oracle/oradata/orcl/compress_01.dbf                                                                 15 ONLINE    20971520    6645207
/u01/app/oracle/oradata/orcl/compress_02.dbf                                                                 16 ONLINE    20971520    6645207
/u01/app/oracle/oradata/orcl/test_01.dbf                                                                     17 ONLINE    20971520    6645207
/u01/app/oracle/oradata/orcl/test02.dbf                                                                      18 ONLINE    20971520    6645207

17 rows selected.

SYS@orcl>


           9:查询表空间users 的大小

SYS@orcl> SELECT sum(bytes) FROM dba_data_files WHERE tablespace_name='USERS';

SUM(BYTES)
----------
   5242880

SYS@orcl>


           10:查询scott 用户拥有的段类型和个数


SYS@orcl> SELECT SEGMENT_TYPE,COUNT(*) SEG_COUNT FROM dba_segments WHERE owner='SCOTT' GROUP BY SEGMENT_TYPE;


SEGMENT_TYPE        SEG_COUNT
------------------ ----------
INDEX PARTITION             2
TABLE PARTITION             1
INDEX                       9
TABLE                       8

SYS@orcl> SYS@orcl>


           11:查询表空间的自动段空间管理

SYS@orcl> select tablespace_name,SEGMENT_SPACE_MANAGEMENT from dba_tablespaces;

TABLESPACE_NAME      SEGMEN
-------------------- ------
SYSTEM               MANUAL
SYSAUX               AUTO
UNDOTBS1             MANUAL
TEMP                 MANUAL
USERS                AUTO
EXAMPLE              AUTO
TBS_TEST1            AUTO
TBS_TEST_3           MANUAL
TBS_TEST4            AUTO
TBS_TEST5            AUTO
TBS_BIG_1            AUTO

TABLESPACE_NAME      SEGMEN
-------------------- ------
TEMP_1               MANUAL
TBS_EXAMPLE          MANUAL
TEMP_01              MANUAL
TP1                  MANUAL
TP2                  MANUAL
TS_1                 AUTO
TS_2                 AUTO
TBSP_1               AUTO
COMPRESS_01          AUTO
COMPRESS_02          AUTO
TEST                 AUTO

TABLESPACE_NAME      SEGMEN
-------------------- ------
TEST2                AUTO

23 rows selected.



           12:通过DBA_SEGMENTS 视图,查看段的区和块的数目

  查询分配给EMP 段的区和块的数目

SYS@orcl> SELECT segment_name,extents,blocks,bytes FROM dba_segments ;

SEGMENT_NAME                                                                         EXTENTS     BLOCKS      BYTES
--------------------------------------------------------------------------------- ---------- ---------- ----------
I_USER1                                                                                    1          8      65536
CON$                                                                                       6         48     393216
UNDO$                                                                                      1          8      65536
C_COBJ#                                                                                   17        256    2097152
I_OBJ#                                                                                     4         32     262144
PROXY_ROLE_DATA$                                                                           1          8      65536
I_IND1                                                                                     2         16     131072
I_CDEF2                                                                                    4         32     262144
I_OBJ5                                                                                    21        768    6291456
I_PROXY_ROLE_DATA$_1                                                                       1          8      65536
FILE$                                                                                      1          8      65536

SEGMENT_NAME                                                                         EXTENTS     BLOCKS      BYTES
--------------------------------------------------------------------------------- ---------- ---------- ----------
I_FILE#_BLOCK#                                                                             6         48     393216
I_FILE1                                                                                    1          8      65536
I_CON1                                                                                     9         72     589824
I_OBJ3                                                                                     3         24     196608
I_TS#                                                                                      1          8      65536
I_CDEF4                                                                                    5         40     327680
C_TS#                                                                                      5         40     327680
I_FILE2                                                                                    1          8      65536
I_TS1                                                                                      1          8      65536
I_UNDO2                                                                                    1          8      65536
PROXY_DATA$                                                                                1          8      65536

SEGMENT_NAME                                                                         EXTENTS     BLOCKS      BYTES
--------------------------------------------------------------------------------- ---------- ---------- ----------
I_USER2                                                                                    1          8      65536
I_PROXY_DATA$                                                                              1          8      65536
I_OBJ1                                                                                    18        384    3145728
I_COL2                                                                                    18        384    3145728
I_OBJ2                                                                                    21        768    6291456
I_OBJ4                                                                                    18        384    3145728
I_CCOL1                                                                                    5         40     327680
C_FILE#_BLOCK#                                                                            17        256    2097152
C_USER#                                                                                    1          8      65536
I_UNDO1                                                                                    1          8      65536
BOOTSTRAP$                                                                                 1          8      65536

SEGMENT_NAME                                                                         EXTENTS     BLOCKS      BYTES
--------------------------------------------------------------------------------- ---------- ---------- ----------
I_TAB1                                                                                     1          8      65536
I_CON2                                                                                     3         24     196608
I_COBJ#                                                                                    2         16     131072
OBJ$                                                                                      23       1024    8388608
I_COL3                                                                                    17        256    2097152
C_OBJ#                                                                                    27       1536   12582912
I_CDEF1                                                                                    3         24     196608
I_ICOL1                                                                                    3         24     196608
I_CDEF3                                                                                    1          8      65536
I_CCOL2                                                                                    5         40     327680
I_COL1                                                                                    20        640    5242880

SEGMENT_NAME                                                                         EXTENTS     BLOCKS      BYTES
--------------------------------------------------------------------------------- ---------- ---------- ----------
I_USER#                                                                                    1          8      65536
I_PROXY_ROLE_DATA$_2                                                                       1          8      65536
OBJERROR$                                                                                  1          8      65536
OBJAUTH$                                                                                  14        112     917504
I_OBJAUTH1                                                                                17        256    2097152
I_OBJAUTH2                                                                                17        256    2097152
UGROUP$                                                                                    1          8      65536
I_UGROUP1                                                                                  1          8      65536
I_UGROUP2                                                                                  1          8      65536
SYN$                                                                                      17        256    2097152
VIEW$                                                                                     22        896    7340032

SEGMENT_NAME                                                                         EXTENTS     BLOCKS      BYTES
--------------------------------------------------------------------------------- ---------- ---------- ----------
TYPED_VIEW$                                                                                1          8      65536
SUPEROBJ$                                                                                  1          8      65536
I_SUPEROBJ1                                                                                1          8      65536
I_SUPEROBJ2                                                                                1          8      65536
SEQ$                                                                                       1          8      65536
I_VIEW1                                                                                    2         16     131072
I_TYPED_VIEW1                                                                              1          8      65536
I_SYN1                                                                                     7         56     458752
I_SYN2                                                                                    17        256    2097152
I_SEQ1                                                                                     1          8      65536
I_LOB1                                                                                     1          8      65536

SEGMENT_NAME                                                                         EXTENTS     BLOCKS      BYTES
--------------------------------------------------------------------------------- ---------- ---------- ----------
I_LOB2                                                                                     1          8      65536
I_COLTYPE1                                                                                 2         16     131072
I_COLTYPE2                                                                                 2         16     131072
I_SUBCOLTYPE1                                                                              1          8      65536
I_NTAB1                                                                                    1          8      65536
I_NTAB2                                                                                    1          8      65536
I_NTAB3                                                                                    1          8      65536
I_REFCON1                                                                                  1          8      65536
I_REFCON2                                                                                  1          8      65536
I_OPQTYPE1                                                                                 1          8      65536
PROPS$                                                                                     1          8      65536

SEGMENT_NAME                                                                         EXTENTS     BLOCKS      BYTES
--------------------------------------------------------------------------------- ---------- ---------- ----------
EDITION$                                                                                   1          8      65536
FIXED_OBJ$                                                                                 1          8      65536
I_FIXED_OBJ$_OBJ#                                                                          1          8      65536
MIGRATE$                                                                                   1          8      65536
DEPENDENCY$                                                                               22        896    7340032
ACCESS$                                                                                   19        512    4194304
I_DEPENDENCY1                                                                             21        768    6291456
I_DEPENDENCY2                                                                             21        768    6291456
I_ACCESS1                                                                                 19        512    4194304
VIEWCON$                                                                                   1          8      65536
SYS_IL0000000109C00005$$                                                                   1          8      65536

SEGMENT_NAME                                                                         EXTENTS     BLOCKS      BYTES
--------------------------------------------------------------------------------- ---------- ---------- ----------
SYS_LOB0000000109C00005$$                                                                  1          8      65536
I_VIEWCON1                                                                                 1          8      65536
I_VIEWCON2                                                                                 1          8      65536
I_ICOLDEP$_OBJ                                                                             1          8      65536
DUAL                                                                                       1          8      65536
SYSAUTH$                                                                                   1          8      65536
OBJPRIV$                                                                                   1          8      65536
DEFROLE$                                                                                   1          8      65536
I_SYSAUTH1                                                                                 1          8      65536
I_DEFROLE1                                                                                 1          8      65536
ECOL$                                                                                      1          8      65536

SEGMENT_NAME                                                                         EXTENTS     BLOCKS      BYTES
--------------------------------------------------------------------------------- ---------- ---------- ----------
SYS_IL0000000123C00003$$                                                                   1          8      65536
SYS_LOB0000000123C00003$$                                                                  1          8      65536
ECOL_IX1                                                                                   1          8      65536
EV$                                                                                        1          8      65536
I_EV1                                                                                      1          8      65536
I_EV2                                                                                      1          8      65536
EVCOL$                                                                                     1          8      65536
I_EVCOL1                                                                                   1          8      65536
DEFERRED_STG$                                                                              3         24     196608
I_DEFERRED_STG1                                                                            2         16     131072
SQLERROR$                                                                                  1          8      65536

SEGMENT_NAME                                                                         EXTENTS     BLOCKS      BYTES
--------------------------------------------------------------------------------- ---------- ---------- ----------
LINK$                                                                                      1          8      65536
TRUSTED_LIST$                                                                              1          8      65536
COM$                                                                                      17        256    2097152
I_LINK1                                                                                    1          8      65536
I_COM1                                                                                     8         64     524288
DUC$                                                                                       1          8      65536
I_DUC                                                                                      1          8      65536
RECYCLEBIN$                                                                                1          8      65536
RECYCLEBIN$_OBJ                                                                            1          8      65536
RECYCLEBIN$_TS                                                                             1          8      65536
RECYCLEBIN$_OWNER                                                                          1          8      65536

SEGMENT_NAME                                                                         EXTENTS     BLOCKS      BYTES
--------------------------------------------------------------------------------- ---------- ---------- ----------
IND_ONLINE$                                                                                1          8      65536
CONTEXT$                                                                                   1          8      65536
I_CONTEXT                                                                                  1          8      65536
SQL_VERSION$                                                                               1          8      65536
I_SQL_VERSION$_VERSION#                                                                    1          8      65536
JIJOIN$                                                                                    1          8      65536
I_JIJOIN$                                                                                  1          8      65536
I2_JIJOIN$                                                                                 1          8      65536
I3_JIJOIN$                                                                                 1          8      65536
JIREFRESHSQL$                                                                              1          8      65536
SYS_IL0000000155C00003$$                                                                   1          8      65536

SEGMENT_NAME                                                                         EXTENTS     BLOCKS      BYTES
--------------------------------------------------------------------------------- ---------- ---------- ----------
SYS_LOB0000000155C00003$$                                                                  1          8      65536
I1_JIREFRESHSQL$                                                                           1          8      65536
I2_JIREFRESHSQL$                                                                           1          8      65536
TRIGGER$                                                                                  13        104     851968
TRIGGERCOL$                                                                                2         16     131072
I_TRIGGER1                                                                                 1          8      65536
I_TRIGGER2                                                                                 1          8      65536
I_TRIGGERCOL1                                                                              3         24     196608
I_TRIGGERCOL2                                                                              3         24     196608
TRIGGERJAVAF$                                                                              1          8      65536
TRIGGERJAVAS$                                                                              1          8      65536

SEGMENT_NAME                                                                         EXTENTS     BLOCKS      BYTES
--------------------------------------------------------------------------------- ---------- ---------- ----------
TRIGGERJAVAC$                                                                              1          8      65536
TRIGGERJAVAM$                                                                              1          8      65536
I_TRIGGERJAVAF                                                                             1          8      65536
I_TRIGGERJAVAS                                                                             1          8      65536
I_TRIGGERJAVAC                                                                             1          8      65536
I_TRIGGERJAVAM                                                                             1          8      65536
I_VIEWTRCOL1                                                                               1          8      65536
TRIGGERDEP$                                                                                1          8      65536
TRIGGERDEPIND$                                                                             1          8      65536
INDREBUILD$                                                                                1          8      65536
I_INDREBUILD1                                                                              1          8      65536

SEGMENT_NAME                                                                         EXTENTS     BLOCKS      BYTES
--------------------------------------------------------------------------------- ---------- ---------- ----------
COMPRESSION$                                                                               1          8      65536
SYS_IL0000000182C00017$$                                                                   1          8      65536
SYS_LOB0000000182C00017$$                                                                  1          8      65536
I_COMPRESSION1                                                                             1          8      65536
TRANSIENT_IOT$                                                                             1          8      65536
SQLLOG$_PKEY                                                                               1          8      65536
SMB$CONFIG                                                                                 1          8      65536
I_SMB$CONFIG_PKEY                                                                          1          8      65536
SQL$                                                                                       1          8      65536
SYS_IL0000000192C00005$$                                                                   1          8      65536
SYS_LOB0000000192C00005$$                                                                  1          8      65536

SEGMENT_NAME                                                                         EXTENTS     BLOCKS      BYTES
--------------------------------------------------------------------------------- ---------- ---------- ----------
I_SQL$_PKEY                                                                                1          8      65536
SQL$TEXT                                                                                   1          8      65536
SYS_IL0000000196C00005$$                                                                   1          8      65536
SYS_LOB0000000196C00005$$                                                                  1          8      65536
SYS_IL0000000196C00003$$                                                                   1          8      65536
SYS_LOB0000000196C00003$$                                                                  1          8      65536
I_SQL$TEXT_PKEY                                                                            1          8      65536
I_SQL$TEXT_HANDLE                                                                          1          8      65536
SQLOBJ$_PKEY                                                                               1          8      65536
SYS_IL0000000203C00009$$                                                                   1          8      65536
SYS_LOB0000000203C00009$$                                                                  1          8      65536

SEGMENT_NAME                                                                         EXTENTS     BLOCKS      BYTES
--------------------------------------------------------------------------------- ---------- ---------- ----------
I_SQLOBJ$NAME_TYPE                                                                         1          8      65536
SQLOBJ$DATA_PKEY                                                                           1          8      65536
SYS_IL0000000208C00007$$                                                                   1          8      65536
SYS_LOB0000000208C00007$$                                                                  1          8      65536
SYS_IL0000000208C00005$$                                                                   1          8      65536
SYS_LOB0000000208C00005$$                                                                  1          8      65536
SQLOBJ$AUXDATA                                                                             1          8      65536
SYS_IL0000000214C00036$$                                                                   1          8      65536
SYS_LOB0000000214C00036$$                                                                  1          8      65536
I_SQLOBJ$AUXDATA_PKEY                                                                      1          8      65536
I_SQLOBJ$AUXDATA_TASK                                                                      1          8      65536

SEGMENT_NAME                                                                         EXTENTS     BLOCKS      BYTES
--------------------------------------------------------------------------------- ---------- ---------- ----------
OBJECT_USAGE                                                                               1          8      65536
I_STATS_OBJ#                                                                               1          8      65536
PROCEDURE$                                                                                 4         32     262144
PROCEDUREINFO$                                                                            17        256    2097152
ARGUMENT$                                                                                 27       1536   12582912
SOURCE$                                                                                   80       9216   75497472
IDL_UB1$                                                                                 102      31744  260046848
IDL_CHAR$                                                                                 25       1280   10485760
IDL_UB2$                                                                                  46       3968   32505856
IDL_SB4$                                                                                  20        640    5242880
ERROR$                                                                                     1          8      65536

SEGMENT_NAME                                                                         EXTENTS     BLOCKS      BYTES
--------------------------------------------------------------------------------- ---------- ---------- ----------
SETTINGS$                                                                                 18        384    3145728
I_PROCEDURE1                                                                               2         16     131072
I_PROCEDUREINFO1                                                                          17        256    2097152
I_ARGUMENT1                                                                               24       1152    9437184
I_ARGUMENT2                                                                               21        768    6291456
I_SOURCE1                                                                                 27       1536   12582912
I_IDL_UB11                                                                                17        256    2097152
I_IDL_CHAR1                                                                                4         32     262144
I_IDL_UB21                                                                                 7         56     458752
I_IDL_SB41                                                                                 9         72     589824
I_ERROR1                                                                                   1          8      65536

SEGMENT_NAME                                                                         EXTENTS     BLOCKS      BYTES
--------------------------------------------------------------------------------- ---------- ---------- ----------
I_SETTINGS1                                                                               17        256    2097152
NCOMP_DLL$                                                                                 1          8      65536
SYS_IL0000000242C00003$$                                                                   1          8      65536
NATIVE_COMP_SHARED_OBJECTS                                                                 1        128    1048576
I_NCOMP_DLL1                                                                               1          8      65536
PROCEDUREJAVA$                                                                             5         40     327680
I_PROCEDUREJAVA$                                                                           1          8      65536
PROCEDUREC$                                                                                1          8      65536
I_PROCEDUREC$                                                                              1          8      65536
PROCEDUREPLSQL$                                                                            6         48     393216
I_PROCEDUREPLSQL$                                                                          6         48     393216

SEGMENT_NAME                                                                         EXTENTS     BLOCKS      BYTES
--------------------------------------------------------------------------------- ---------- ---------- ----------
WARNING_SETTINGS$                                                                          3         24     196608
I_WARNING_SETTINGS                                                                         4         32     262144
DIANA_VERSION$                                                                             1          8      65536
I_DIANA_VERSION                                                                            1          8      65536
PLSCOPE_IDENTIFIER$                                                                        3         24     196608
I_PLSCOPE_SIG_IDENTIFIER$                                                                  3         24     196608
I_PLSCOPE_OBJ_IDENTIFIER$                                                                  2         16     131072
PLSCOPE_ACTION$                                                                            7         56     458752
I_PLSCOPE_SIG_ACTION$                                                                      7         56     458752
I_PLSCOPE_OBJ_ACTION$                                                                      3         24     196608
PENDING_TRANS$                                                                             1          8      65536

SEGMENT_NAME                                                                         EXTENTS     BLOCKS      BYTES
--------------------------------------------------------------------------------- ---------- ---------- ----------
I_PENDING_TRANS1                                                                           1          8      65536
PENDING_SESSIONS$                                                                          1          8      65536
PENDING_SUB_SESSIONS$                                                                      1          8      65536
SMON_SCN_TO_TIME_AUX                                                                      18        384    3145728
SMON_SCN_TO_TIME_AUX_IDX                                                                   1          8      65536
SMON_SCN_TIME_TIM_IDX                                                                      2         16     131072
SMON_SCN_TIME_SCN_IDX                                                                      2         16     131072
MAP_FILE$                                                                                  1          8      65536
MAP_FILE_EXTENT$                                                                           1          8      65536
MAP_SUBELEMENT$                                                                            1          8      65536
MAP_ELEMENT$                                                                               1          8      65536

SEGMENT_NAME                                                                         EXTENTS     BLOCKS      BYTES
--------------------------------------------------------------------------------- ---------- ---------- ----------
MAP_EXTELEMENT$                                                                            1          8      65536
MAP_COMPLIST$                                                                              1          8      65536
PROFILE$                                                                                   1          8      65536
PROFNAME$                                                                                  1          8      65536
RESOURCE_COST$                                                                             1          8      65536
I_PROFNAME                                                                                 1          8      65536
I_PROFILE                                                                                  1          8      65536
JOB$                                                                                       1          8      65536
I_JOB_JOB                                                                                  1          8      65536
I_JOB_NEXT                                                                                 1          8      65536
RESOURCE_MAP                                                                               1          8      65536

SEGMENT_NAME                                                                         EXTENTS     BLOCKS      BYTES
--------------------------------------------------------------------------------- ---------- ---------- ----------
USER_ASTATUS_MAP                                                                           1          8      65536
RESOURCE_PLAN$                                                                             1          8      65536
RESOURCE_CONSUMER_GROUP$                                                                   1          8      65536
RESOURCE_CATEGORY$                                                                         1          8      65536
RESOURCE_PLAN_DIRECTIVE$                                                                   1          8      65536
RESOURCE_GROUP_MAPPING$                                                                    1          8      65536
RESOURCE_MAPPING_PRIORITY$                                                                 1          8      65536
RESOURCE_STORAGE_POOL_MAPPING$                                                             1          8      65536
RESOURCE_CAPABILITY$                                                                       1          8      65536
RESOURCE_INSTANCE_CAPABILITY$                                                              1          8      65536
RESOURCE_IO_CALIBRATE$                                                                     1          8      65536

SEGMENT_NAME                                                                         EXTENTS     BLOCKS      BYTES
--------------------------------------------------------------------------------- ---------- ---------- ----------
TSM_SRC$                                                                                   1          8      65536
I_TSM_SRC1$                                                                                1          8      65536
I_TSM_SRC2$                                                                                1          8      65536
TSM_DST$                                                                                   1          8      65536
I_TSM_DST1$                                                                                1          8      65536
I_TSM_DST2$                                                                                1          8      65536
SERVICE$                                                                                   1          8      65536
DIR$MIGRATE_OPERATIONS                                                                     1          8      65536
I_DIR$MIGRATE_UI                                                                           1          8      65536
I_DIR$MIGRATE_END_TIME                                                                     1          8      65536
I_DIR$MIGRATE_ALERT_SEQ_ID                                                                 1          8      65536

SEGMENT_NAME                                                                         EXTENTS     BLOCKS      BYTES
--------------------------------------------------------------------------------- ---------- ---------- ----------
I_DIR$MIGRATE_STATUS                                                                       1          8      65536
DIR$SERVICE_OPERATIONS                                                                     1          8      65536
I_DIR$SERVICE_UI                                                                           1          8      65536
I_DIR$SERVICE_END_TIME                                                                     1          8      65536
I_DIR$SERVICE_ALERT_SEQ_ID                                                                 1          8      65536
I_DIR$SERVICE_STATUS                                                                       1          8      65536
DIR$ESCALATE_OPERATIONS                                                                    1          8      65536
I_DIR$ESCALATE_UI                                                                          1          8      65536
I_DIR$ESCALATE_END_TIME                                                                    1          8      65536
I_DIR$ESCALATE_ALERT_SEQ_ID                                                                1          8      65536
I_DIR$ESCALATE_STATUS                                                                      1          8      65536

SEGMENT_NAME                                                                         EXTENTS     BLOCKS      BYTES
--------------------------------------------------------------------------------- ---------- ---------- ----------
DIR$QUIESCE_OPERATIONS                                                                     1          8      65536
I_DIR$QUIESCE_UI                                                                           1          8      65536
I_DIR$QUIESCE_STATUS                                                                       1          8      65536
I_DIR$QUIESCE_END_TIME                                                                     1          8      65536
I_DIR$QUIESCE_ALERT_SEQ_ID                                                                 1          8      65536
DIR$INSTANCE_ACTIONS                                                                       1          8      65536
I_DIR$INSTANCE_JOB_NAME                                                                    1          8      65536
I_DIR$INSTANCE_ACTTYP                                                                      1          8      65536
I_DIR$INSTANCE_END_TIME                                                                    1          8      65536
DIR$RESONATE_OPERATIONS                                                                    1          8      65536
I_DIR$RESONATE_UI                                                                          1          8      65536

SEGMENT_NAME                                                                         EXTENTS     BLOCKS      BYTES
--------------------------------------------------------------------------------- ---------- ---------- ----------
I_DIR$RESONATE_STATUS                                                                      1          8      65536
I_DIR$RESONATE_END_TIME                                                                    1          8      65536
I_DIR$RESONATE_ALERT_NAME                                                                  1          8      65536
DIR$ALERT_HISTORY                                                                          1          8      65536
I_DIR$ALERT_HISTORY_NAME                                                                   1          8      65536
I_DIR$ALERT_HISTORY_ACTION_ID                                                              1          8      65536
I_DIR$ALERT_HISTORY_REASON_ID                                                              1          8      65536
I_DIR$ALERT_HISTORY_AT                                                                     1          8      65536
DIR$REASON_STRINGS                                                                         1          8      65536
I_DIR$REASON_STRINGS_UI                                                                    1          8      65536
DIR$DATABASE_ATTRIBUTES                                                                    1          8      65536

SEGMENT_NAME                                                                         EXTENTS     BLOCKS      BYTES
--------------------------------------------------------------------------------- ---------- ---------- ----------
I_DIR$DB_ATTRIBUTES_UI                                                                     1          8      65536
DIR$VICTIM_POLICY                                                                          1          8      65536
DIR$NODE_ATTRIBUTES                                                                        1          8      65536
I_DIR$NODE_ATTRIBUTES_ATTR                                                                 1          8      65536
DIR$SERVICE_ATTRIBUTES                                                                     1          8      65536
I_DIR$SERVICE_ATTRIBUTES_UI                                                                1          8      65536
I_DIR$SERVICE_ATTRIBUTES_ATTR                                                              1          8      65536
_default_auditing_options_                                                                 1          8      65536
AUDIT$                                                                                     1          8      65536
I_AUDIT                                                                                    1          8      65536
SYSTEM_PRIVILEGE_MAP                                                                       1          8      65536

SEGMENT_NAME                                                                         EXTENTS     BLOCKS      BYTES
--------------------------------------------------------------------------------- ---------- ---------- ----------
I_SYSTEM_PRIVILEGE_MAP                                                                     1          8      65536
TABLE_PRIVILEGE_MAP                                                                        1          8      65536
I_TABLE_PRIVILEGE_MAP                                                                      1          8      65536
STMT_AUDIT_OPTION_MAP                                                                      1          8      65536
I_STMT_AUDIT_OPTION_MAP                                                                    1          8      65536
USER_HISTORY$                                                                              1          8      65536
RLS$                                                                                       1          8      65536
I_RLS                                                                                      1          8      65536
I_RLS2                                                                                     1          8      65536
RLS_SC$                                                                                    1          8      65536
I_RLS_SC                                                                                   1          8      65536

SEGMENT_NAME                                                                         EXTENTS     BLOCKS      BYTES
--------------------------------------------------------------------------------- ---------- ---------- ----------
RLS_GRP$                                                                                   1          8      65536
I_RLS_GRP                                                                                  1          8      65536
RLS_CTX$                                                                                   1          8      65536
I_RLS_CTX                                                                                  1          8      65536
AUD$                                                                                      20        640    5242880
SYS_IL0000000384C00041$$                                                                   1          8      65536
SYS_LOB0000000384C00041$$                                                                  1          8      65536
SYS_IL0000000384C00040$$                                                                   1          8      65536
SYS_LOB0000000384C00040$$                                                                  1          8      65536
FGA$                                                                                       1          8      65536
I_FGA                                                                                      1          8      65536

SEGMENT_NAME                                                                         EXTENTS     BLOCKS      BYTES
--------------------------------------------------------------------------------- ---------- ---------- ----------
I_FGAP                                                                                     1          8      65536
FGACOL$                                                                                    1          8      65536
I_FGACOL                                                                                   1          8      65536
FGA_LOG$                                                                                   1          8      65536
SYS_IL0000000394C00028$$                                                                   1          8      65536
SYS_LOB0000000394C00028$$                                                                  1          8      65536
SYS_IL0000000394C00013$$                                                                   1          8      65536
SYS_LOB0000000394C00013$$                                                                  1          8      65536
APPROLE$                                                                                   1          8      65536
I_APPROLE                                                                                  1          8      65536
ENC$                                                                                       1          8      65536




           13:使用DBA_EXTENTS 视图检查给定段的区的信息


SYS@orcl> SELECT extent_id,file_id,block_id,blocks FROM dba_extents WHERE owner = 'SCOTT' AND segment_name='EMP';

 EXTENT_ID    FILE_ID   BLOCK_ID     BLOCKS
---------- ---------- ---------- ----------
         0          4        144          8

SYS@orcl>



           14:使用DBA_FREE_SPACE 视图  查询所有表空间的自由空间

SYS@orcl> SELECT tablespace_name, count(*),max(blocks), sum(blocks) FROM dba_free_space GROUP BY tablespace_name;

TABLESPACE_NAME        COUNT(*) MAX(BLOCKS) SUM(BLOCKS)
-------------------- ---------- ----------- -----------
TBS_TEST1                     2         736         800
TS_1                          1        1152        1152
COMPRESS_02                   1        2432        2432
SYSAUX                      156        5504       11624
UNDOTBS1                     11        8704       23776
TBS_TEST_3                    1       12672       12672
TBS_BIG_1                     1      130944      130944
USERS                         2          40          48
COMPRESS_01                   1        2392        2392
TEST                          1        2432        2432
SYSTEM                        2        1920        1960

TABLESPACE_NAME        COUNT(*) MAX(BLOCKS) SUM(BLOCKS)
-------------------- ---------- ----------- -----------
EXAMPLE                       3        4232        4544
TBS_TEST4                     1        1408        1408
TS_2                          1        1152        1152
TBS_TEST5                     1        3776        3776
TEST2                         1        2432        2432
TBSP_1                        1        2432        2432

17 rows selected.

SYS@orcl>


           15:小文件表空间创建

      


  • SMALLFILE | BIGFILE : 表示创建的是小文件表空间 还是 大文件表空间
  • REUSE:  表示 若该文件存在,则清除该文件再重新建立该文件,若该文件不存在,则创建该文件。
  • AUTOEXEND[ ON | OFF ]:  表示数据文件为自动扩展(ON) 或者 非自动扩展(OFF),如果是自动扩展,则需要设置 next 的值。
  • MAXSIZE:  表示当数据文件自动扩展时,允许数据文件扩展的最大长度字节数,如果指定 UNLIMITED 关键字,则不需要指定字节长度。
  • MINIMUN EXTENT: 指定最小的长度,由操作系统和数据库的块决定
  • ONLINE | OFFLINE: 创建表空间时可以指定为在线或者离线
  • PERMANENT | TEMPORARY :  指定创建的表空间是 永久表空间或临时表空间,默认为永久性表空间。
  • LOGGING | NOLOGGING : 指定该表空间内的表在加载数据时是否产生日志,默认为产生日志(LOGGING)。即使设置为NOLOGGING,但在进行 INSERT、UPDATE 和 DELETE 操作时,Oracle 仍会将操作信息记录到Redo Log Buffer 中。
  • EXTENT MANAGEMENT DICTIONARY | LOCAL:指定表空间的扩展方式是使用数据字典管理还是本地化管理,默认为本地化管理。Oracle不推荐使用数据字典表空间
  • AUTOALLOCATE | UNIFORM SIZE : 如果采用本地化管理表空间,在表空间扩展时,指定每次盘区扩展的大小是由系统自动指定还是按照等同大小进行。若是按照等同大小进行,则默认每次扩展的大小为1MB.
  • DEFAULT STORAGE: 指定以后要创建的表、索引及簇的储存参数值,这些参数将影响以后表等的储存参数值。




                     1: 创建一个一般默认属性的10M大小的表空间 tbs_01

SYS@orcl> set linesize 200;
SYS@orcl> col name for a30;
SYS@orcl> col datafile_name for a90;
SYS@orcl> select t1.name,t2.name datafile_name  from v$tablespace t1,v$datafile t2 where t1.ts# = t2.ts#;

NAME                           DATAFILE_NAME
------------------------------ ------------------------------------------------------------------------------------------
SYSTEM                         /u01/app/oracle/oradata/orcl/system01.dbf
SYSAUX                         /u01/app/oracle/oradata/orcl/sysaux01.dbf
UNDOTBS1                       /u01/app/oracle/oradata/orcl/undotbs01.dbf
USERS                          /u01/app/oracle/oradata/orcl/users01.dbf
EXAMPLE                        /u01/app/oracle/oradata/orcl/example01.dbf
TBS_TEST1                      /u01/app/oracle/oradata/orcl/datafile1.dbf
TS_1                           /u01/app/oracle/oradata/orcl/ts1.dbf
TBS_TEST_3                     /u01/app/oracle/oradata/orcl/datafile3.dbf
TBS_TEST4                      /u01/app/oracle/oradata/orcl/datafile4.dbf
TBS_TEST5                      /u01/app/oracle/oradata/orcl/datafile5.dbf
TBS_BIG_1                      /u01/app/oracle/oradata/orcl/datafilebig_1.dfb

NAME                           DATAFILE_NAME
------------------------------ ------------------------------------------------------------------------------------------
TS_2                           /u01/app/oracle/oradata/orcl/ts2.dbf
TBSP_1                         /u01/app/oracle/oradata/orcl/tbsp_1.dbf
COMPRESS_01                    /u01/app/oracle/oradata/orcl/compress_01.dbf
COMPRESS_02                    /u01/app/oracle/oradata/orcl/compress_02.dbf
TEST                           /u01/app/oracle/oradata/orcl/test_01.dbf
TEST2                          /u01/app/oracle/oradata/orcl/test02.dbf

17 rows selected.


SYS@orcl> create tablespace tbs_01 datafile '/u01/app/oracle/oradata/orcl/tbs_01.dbf' size 10m;

Tablespace created.

SYS@orcl> select t1.name,t2.name datafile_name  from v$tablespace t1,v$datafile t2 where t1.ts# = t2.ts#;

NAME                           DATAFILE_NAME
------------------------------ ------------------------------------------------------------------------------------------
SYSTEM                         /u01/app/oracle/oradata/orcl/system01.dbf
SYSAUX                         /u01/app/oracle/oradata/orcl/sysaux01.dbf
UNDOTBS1                       /u01/app/oracle/oradata/orcl/undotbs01.dbf
USERS                          /u01/app/oracle/oradata/orcl/users01.dbf
EXAMPLE                        /u01/app/oracle/oradata/orcl/example01.dbf
TBS_TEST1                      /u01/app/oracle/oradata/orcl/datafile1.dbf
TS_1                           /u01/app/oracle/oradata/orcl/ts1.dbf
TBS_TEST_3                     /u01/app/oracle/oradata/orcl/datafile3.dbf
TBS_TEST4                      /u01/app/oracle/oradata/orcl/datafile4.dbf
TBS_TEST5                      /u01/app/oracle/oradata/orcl/datafile5.dbf
TBS_BIG_1                      /u01/app/oracle/oradata/orcl/datafilebig_1.dfb

NAME                           DATAFILE_NAME
------------------------------ ------------------------------------------------------------------------------------------
TS_2                           /u01/app/oracle/oradata/orcl/ts2.dbf
TBS_01                         /u01/app/oracle/oradata/orcl/tbs_01.dbf
TBSP_1                         /u01/app/oracle/oradata/orcl/tbsp_1.dbf
COMPRESS_01                    /u01/app/oracle/oradata/orcl/compress_01.dbf
COMPRESS_02                    /u01/app/oracle/oradata/orcl/compress_02.dbf
TEST                           /u01/app/oracle/oradata/orcl/test_01.dbf
TEST2                          /u01/app/oracle/oradata/orcl/test02.dbf

18 rows selected.

SYS@orcl>


                     2: 创建一个含有多个数据文件的表空间  tbs_02

SYS@orcl> select t1.name,t2.name datafile_name  from v$tablespace t1,v$datafile t2 where t1.ts# = t2.ts#;

NAME                           DATAFILE_NAME
------------------------------ ------------------------------------------------------------------------------------------
SYSTEM                         /u01/app/oracle/oradata/orcl/system01.dbf
SYSAUX                         /u01/app/oracle/oradata/orcl/sysaux01.dbf
UNDOTBS1                       /u01/app/oracle/oradata/orcl/undotbs01.dbf
USERS                          /u01/app/oracle/oradata/orcl/users01.dbf
EXAMPLE                        /u01/app/oracle/oradata/orcl/example01.dbf
TBS_TEST1                      /u01/app/oracle/oradata/orcl/datafile1.dbf
TS_1                           /u01/app/oracle/oradata/orcl/ts1.dbf
TBS_TEST_3                     /u01/app/oracle/oradata/orcl/datafile3.dbf
TBS_TEST4                      /u01/app/oracle/oradata/orcl/datafile4.dbf
TBS_TEST5                      /u01/app/oracle/oradata/orcl/datafile5.dbf
TBS_BIG_1                      /u01/app/oracle/oradata/orcl/datafilebig_1.dfb

NAME                           DATAFILE_NAME
------------------------------ ------------------------------------------------------------------------------------------
TS_2                           /u01/app/oracle/oradata/orcl/ts2.dbf
TBS_01                         /u01/app/oracle/oradata/orcl/tbs_01.dbf
TBSP_1                         /u01/app/oracle/oradata/orcl/tbsp_1.dbf
COMPRESS_01                    /u01/app/oracle/oradata/orcl/compress_01.dbf
COMPRESS_02                    /u01/app/oracle/oradata/orcl/compress_02.dbf
TEST                           /u01/app/oracle/oradata/orcl/test_01.dbf
TEST2                          /u01/app/oracle/oradata/orcl/test02.dbf

18 rows selected.

SYS@orcl> create tablespace 
tbs_02
 datafile '/u01/app/oracle/oradata/orcl/tbs_02_01.dbf' size 10m ,'/u01/app/oracle/oradata/orcl/tbs_02_02.dbf' size 10m;

Tablespace created.


SYS@orcl> select t1.name,t2.name datafile_name  from v$tablespace t1,v$datafile t2 where t1.ts# = t2.ts# order by t1.name asc;

NAME                           DATAFILE_NAME
------------------------------ ------------------------------------------------------------------------------------------
COMPRESS_01                    /u01/app/oracle/oradata/orcl/compress_01.dbf
COMPRESS_02                    /u01/app/oracle/oradata/orcl/compress_02.dbf
EXAMPLE                        /u01/app/oracle/oradata/orcl/example01.dbf
SYSAUX                         /u01/app/oracle/oradata/orcl/sysaux01.dbf
SYSTEM                         /u01/app/oracle/oradata/orcl/system01.dbf
TBSP_1                         /u01/app/oracle/oradata/orcl/tbsp_1.dbf
TBS_01                         /u01/app/oracle/oradata/orcl/tbs_01.dbf
TBS_02 /u01/app/oracle/oradata/orcl/tbs_02_01.dbf TBS_02 /u01/app/oracle/oradata/orcl/tbs_02_02.dbf
TBS_BIG_1                      /u01/app/oracle/oradata/orcl/datafilebig_1.dfb
TBS_TEST1                      /u01/app/oracle/oradata/orcl/datafile1.dbf

NAME                           DATAFILE_NAME
------------------------------ ------------------------------------------------------------------------------------------
TBS_TEST4                      /u01/app/oracle/oradata/orcl/datafile4.dbf
TBS_TEST5                      /u01/app/oracle/oradata/orcl/datafile5.dbf
TBS_TEST_3                     /u01/app/oracle/oradata/orcl/datafile3.dbf
TEST                           /u01/app/oracle/oradata/orcl/test_01.dbf
TEST2                          /u01/app/oracle/oradata/orcl/test02.dbf
TS_1                           /u01/app/oracle/oradata/orcl/ts1.dbf
TS_2                           /u01/app/oracle/oradata/orcl/ts2.dbf
UNDOTBS1                       /u01/app/oracle/oradata/orcl/undotbs01.dbf
USERS                          /u01/app/oracle/oradata/orcl/users01.dbf

20 rows selected.

SYS@orcl>


                     3: 创建一个大小为10m 的自动扩展的表空间 tbs_03


SYS@orcl>  select distinct t1.name,t2.name datafile_name  ,t.autoextensible from v$tablespace t1,v$datafile t2    ,dba_data_files t where t1.name=t.tablespace_name   and t1.ts# = t2.ts#    order by t1.name asc;

NAME                           DATAFILE_NAME                                                                              AUT
------------------------------ ------------------------------------------------------------------------------------------ ---
COMPRESS_01                    /u01/app/oracle/oradata/orcl/compress_01.dbf                                               NO
COMPRESS_02                    /u01/app/oracle/oradata/orcl/compress_02.dbf                                               NO
EXAMPLE                        /u01/app/oracle/oradata/orcl/example01.dbf                                                 YES
SYSAUX                         /u01/app/oracle/oradata/orcl/sysaux01.dbf                                                  YES
SYSTEM                         /u01/app/oracle/oradata/orcl/system01.dbf                                                  YES
TBSP_1                         /u01/app/oracle/oradata/orcl/tbsp_1.dbf                                                    YES
TBS_01                         /u01/app/oracle/oradata/orcl/tbs_01.dbf                                                    NO
TBS_02                         /u01/app/oracle/oradata/orcl/tbs_02_01.dbf                                                 NO
TBS_02                         /u01/app/oracle/oradata/orcl/tbs_02_02.dbf                                                 NO
TBS_BIG_1                      /u01/app/oracle/oradata/orcl/datafilebig_1.dfb                                             NO
TBS_TEST1                      /u01/app/oracle/oradata/orcl/datafile1.dbf                                                 NO

NAME                           DATAFILE_NAME                                                                              AUT
------------------------------ ------------------------------------------------------------------------------------------ ---
TBS_TEST4                      /u01/app/oracle/oradata/orcl/datafile4.dbf                                                 NO
TBS_TEST5                      /u01/app/oracle/oradata/orcl/datafile5.dbf                                                 YES
TBS_TEST_3                     /u01/app/oracle/oradata/orcl/datafile3.dbf                                                 YES
TEST                           /u01/app/oracle/oradata/orcl/test_01.dbf                                                   NO
TEST2                          /u01/app/oracle/oradata/orcl/test02.dbf                                                    YES
TS_1                           /u01/app/oracle/oradata/orcl/ts1.dbf                                                       NO
TS_2                           /u01/app/oracle/oradata/orcl/ts2.dbf                                                       NO
UNDOTBS1                       /u01/app/oracle/oradata/orcl/undotbs01.dbf                                                 YES
USERS                          /u01/app/oracle/oradata/orcl/users01.dbf                                                   YES

20 rows selected.

SYS@orcl> create tablespace 
tbs_03
 datafile '/u01/app/oracle/oradata/orcl/tbs_03.dbf' size 10m autoextend on;

Tablespace created.

SYS@orcl>  select distinct t1.name,t2.name datafile_name  ,t.autoextensible from v$tablespace t1,v$datafile t2    ,dba_data_files t where t1.name=t.tablespace_name   and t1.ts# = t2.ts#    order by t1.name asc;

NAME                           DATAFILE_NAME                                                                              AUT
------------------------------ ------------------------------------------------------------------------------------------ ---
COMPRESS_01                    /u01/app/oracle/oradata/orcl/compress_01.dbf                                               NO
COMPRESS_02                    /u01/app/oracle/oradata/orcl/compress_02.dbf                                               NO
EXAMPLE                        /u01/app/oracle/oradata/orcl/example01.dbf                                                 YES
SYSAUX                         /u01/app/oracle/oradata/orcl/sysaux01.dbf                                                  YES
SYSTEM                         /u01/app/oracle/oradata/orcl/system01.dbf                                                  YES
TBSP_1                         /u01/app/oracle/oradata/orcl/tbsp_1.dbf                                                    YES
TBS_01                         /u01/app/oracle/oradata/orcl/tbs_01.dbf                                                    NO
TBS_02                         /u01/app/oracle/oradata/orcl/tbs_02_01.dbf                                                 NO
TBS_02                         /u01/app/oracle/oradata/orcl/tbs_02_02.dbf                                                 NO
TBS_03                         /u01/app/oracle/oradata/orcl/tbs_03.dbf                                                    YES
TBS_BIG_1                      /u01/app/oracle/oradata/orcl/datafilebig_1.dfb                                             NO

NAME                           DATAFILE_NAME                                                                              AUT
------------------------------ ------------------------------------------------------------------------------------------ ---
TBS_TEST1                      /u01/app/oracle/oradata/orcl/datafile1.dbf                                                 NO
TBS_TEST4                      /u01/app/oracle/oradata/orcl/datafile4.dbf                                                 NO
TBS_TEST5                      /u01/app/oracle/oradata/orcl/datafile5.dbf                                                 YES
TBS_TEST_3                     /u01/app/oracle/oradata/orcl/datafile3.dbf                                                 YES
TEST                           /u01/app/oracle/oradata/orcl/test_01.dbf                                                   NO
TEST2                          /u01/app/oracle/oradata/orcl/test02.dbf                                                    YES
TS_1                           /u01/app/oracle/oradata/orcl/ts1.dbf                                                       NO
TS_2                           /u01/app/oracle/oradata/orcl/ts2.dbf                                                       NO
UNDOTBS1                       /u01/app/oracle/oradata/orcl/undotbs01.dbf                                                 YES
USERS                          /u01/app/oracle/oradata/orcl/users01.dbf                                                   YES

21 rows selected.

SYS@orcl>


                     4: 创建一个大小为10m 的自动扩展且下一次扩展大小为2M及表空间最大值为200M 的表空间 tbs_04

SYS@orcl>  select distinct t1.name,t2.name datafile_name  ,t.autoextensible from v$tablespace t1,v$datafile t2    ,dba_data_files t where t1.name=t.tablespace_name   and t1.ts# = t2.ts#    order by t1.name asc;

NAME                           DATAFILE_NAME                                                                              AUT
------------------------------ ------------------------------------------------------------------------------------------ ---
COMPRESS_01                    /u01/app/oracle/oradata/orcl/compress_01.dbf                                               NO
COMPRESS_02                    /u01/app/oracle/oradata/orcl/compress_02.dbf                                               NO
EXAMPLE                        /u01/app/oracle/oradata/orcl/example01.dbf                                                 YES
SYSAUX                         /u01/app/oracle/oradata/orcl/sysaux01.dbf                                                  YES
SYSTEM                         /u01/app/oracle/oradata/orcl/system01.dbf                                                  YES
TBSP_1                         /u01/app/oracle/oradata/orcl/tbsp_1.dbf                                                    YES
TBS_01                         /u01/app/oracle/oradata/orcl/tbs_01.dbf                                                    NO
TBS_02                         /u01/app/oracle/oradata/orcl/tbs_02_01.dbf                                                 NO
TBS_02                         /u01/app/oracle/oradata/orcl/tbs_02_02.dbf                                                 NO
TBS_03                         /u01/app/oracle/oradata/orcl/tbs_03.dbf                                                    YES
TBS_BIG_1                      /u01/app/oracle/oradata/orcl/datafilebig_1.dfb                                             NO

NAME                           DATAFILE_NAME                                                                              AUT
------------------------------ ------------------------------------------------------------------------------------------ ---
TBS_TEST1                      /u01/app/oracle/oradata/orcl/datafile1.dbf                                                 NO
TBS_TEST4                      /u01/app/oracle/oradata/orcl/datafile4.dbf                                                 NO
TBS_TEST5                      /u01/app/oracle/oradata/orcl/datafile5.dbf                                                 YES
TBS_TEST_3                     /u01/app/oracle/oradata/orcl/datafile3.dbf                                                 YES
TEST                           /u01/app/oracle/oradata/orcl/test_01.dbf                                                   NO
TEST2                          /u01/app/oracle/oradata/orcl/test02.dbf                                                    YES
TS_1                           /u01/app/oracle/oradata/orcl/ts1.dbf                                                       NO
TS_2                           /u01/app/oracle/oradata/orcl/ts2.dbf                                                       NO
UNDOTBS1                       /u01/app/oracle/oradata/orcl/undotbs01.dbf                                                 YES
USERS                          /u01/app/oracle/oradata/orcl/users01.dbf                                                   YES

21 rows selected.



SYS@orcl> create tablespace tbs_04 datafile '/u01/app/oracle/oradata/orcl/tbs_04.dbf' size 10 m autoextend on next 2 m maxsize 200m;

Tablespace created.

SYS@orcl>  select distinct t1.name,t2.name datafile_name  ,t.autoextensible from v$tablespace t1,v$datafile t2    ,dba_data_files t where t1.name=t.tablespace_name   and t1.ts# = t2.ts#    order by t1.name asc;

NAME                           DATAFILE_NAME                                                                              AUT
------------------------------ ------------------------------------------------------------------------------------------ ---
COMPRESS_01                    /u01/app/oracle/oradata/orcl/compress_01.dbf                                               NO
COMPRESS_02                    /u01/app/oracle/oradata/orcl/compress_02.dbf                                               NO
EXAMPLE                        /u01/app/oracle/oradata/orcl/example01.dbf                                                 YES
SYSAUX                         /u01/app/oracle/oradata/orcl/sysaux01.dbf                                                  YES
SYSTEM                         /u01/app/oracle/oradata/orcl/system01.dbf                                                  YES
TBSP_1                         /u01/app/oracle/oradata/orcl/tbsp_1.dbf                                                    YES
TBS_01                         /u01/app/oracle/oradata/orcl/tbs_01.dbf                                                    NO
TBS_02                         /u01/app/oracle/oradata/orcl/tbs_02_01.dbf                                                 NO
TBS_02                         /u01/app/oracle/oradata/orcl/tbs_02_02.dbf                                                 NO
TBS_03                         /u01/app/oracle/oradata/orcl/tbs_03.dbf                                                    YES
TBS_04                         /u01/app/oracle/oradata/orcl/tbs_04.dbf                                                    YES

NAME                           DATAFILE_NAME                                                                              AUT
------------------------------ ------------------------------------------------------------------------------------------ ---
TBS_BIG_1                      /u01/app/oracle/oradata/orcl/datafilebig_1.dfb                                             NO
TBS_TEST1                      /u01/app/oracle/oradata/orcl/datafile1.dbf                                                 NO
TBS_TEST4                      /u01/app/oracle/oradata/orcl/datafile4.dbf                                                 NO
TBS_TEST5                      /u01/app/oracle/oradata/orcl/datafile5.dbf                                                 YES
TBS_TEST_3                     /u01/app/oracle/oradata/orcl/datafile3.dbf                                                 YES
TEST                           /u01/app/oracle/oradata/orcl/test_01.dbf                                                   NO
TEST2                          /u01/app/oracle/oradata/orcl/test02.dbf                                                    YES
TS_1                           /u01/app/oracle/oradata/orcl/ts1.dbf                                                       NO
TS_2                           /u01/app/oracle/oradata/orcl/ts2.dbf                                                       NO
UNDOTBS1                       /u01/app/oracle/oradata/orcl/undotbs01.dbf                                                 YES
USERS                          /u01/app/oracle/oradata/orcl/users01.dbf                                                   YES

22 rows selected.

SYS@orcl>


                  5: 创建一个大小为10m 的自动扩展且下一次扩展大小为2M及 表空间大小没有限制  的表空间 tbs_05

SYS@orcl>  select distinct t1.name,t2.name datafile_name  ,t.autoextensible from v$tablespace t1,v$datafile t2    ,dba_data_files t where t1.name=t.tablespace_name   and t1.ts# = t2.ts#    order by t1.name asc;

NAME                           DATAFILE_NAME                                                                              AUT
------------------------------ ------------------------------------------------------------------------------------------ ---
COMPRESS_01                    /u01/app/oracle/oradata/orcl/compress_01.dbf                                               NO
COMPRESS_02                    /u01/app/oracle/oradata/orcl/compress_02.dbf                                               NO
EXAMPLE                        /u01/app/oracle/oradata/orcl/example01.dbf                                                 YES
SYSAUX                         /u01/app/oracle/oradata/orcl/sysaux01.dbf                                                  YES
SYSTEM                         /u01/app/oracle/oradata/orcl/system01.dbf                                                  YES
TBSP_1                         /u01/app/oracle/oradata/orcl/tbsp_1.dbf                                                    YES
TBS_01                         /u01/app/oracle/oradata/orcl/tbs_01.dbf                                                    NO
TBS_02                         /u01/app/oracle/oradata/orcl/tbs_02_01.dbf                                                 NO
TBS_02                         /u01/app/oracle/oradata/orcl/tbs_02_02.dbf                                                 NO
TBS_03                         /u01/app/oracle/oradata/orcl/tbs_03.dbf                                                    YES
TBS_04                         /u01/app/oracle/oradata/orcl/tbs_04.dbf                                                    YES

NAME                           DATAFILE_NAME                                                                              AUT
------------------------------ ------------------------------------------------------------------------------------------ ---
TBS_BIG_1                      /u01/app/oracle/oradata/orcl/datafilebig_1.dfb                                             NO
TBS_TEST1                      /u01/app/oracle/oradata/orcl/datafile1.dbf                                                 NO
TBS_TEST4                      /u01/app/oracle/oradata/orcl/datafile4.dbf                                                 NO
TBS_TEST5                      /u01/app/oracle/oradata/orcl/datafile5.dbf                                                 YES
TBS_TEST_3                     /u01/app/oracle/oradata/orcl/datafile3.dbf                                                 YES
TEST                           /u01/app/oracle/oradata/orcl/test_01.dbf                                                   NO
TEST2                          /u01/app/oracle/oradata/orcl/test02.dbf                                                    YES
TS_1                           /u01/app/oracle/oradata/orcl/ts1.dbf                                                       NO
TS_2                           /u01/app/oracle/oradata/orcl/ts2.dbf                                                       NO
UNDOTBS1                       /u01/app/oracle/oradata/orcl/undotbs01.dbf                                                 YES
USERS                          /u01/app/oracle/oradata/orcl/users01.dbf                                                   YES

22 rows selected.


SYS@orcl> create tablespace 
tbs_05
 datafile '/u01/app/oracle/oradata/orcl/tbs_05.dbf' size 10 m autoextend on next 2m 
maxsize unlimited
;

Tablespace created.

SYS@orcl>  select distinct t1.name,t2.name datafile_name  ,t.autoextensible from v$tablespace t1,v$datafile t2    ,dba_data_files t where t1.name=t.tablespace_name   and t1.ts# = t2.ts#    order by t1.name asc;

NAME                           DATAFILE_NAME                                                                              AUT
------------------------------ ------------------------------------------------------------------------------------------ ---
COMPRESS_01                    /u01/app/oracle/oradata/orcl/compress_01.dbf                                               NO
COMPRESS_02                    /u01/app/oracle/oradata/orcl/compress_02.dbf                                               NO
EXAMPLE                        /u01/app/oracle/oradata/orcl/example01.dbf                                                 YES
SYSAUX                         /u01/app/oracle/oradata/orcl/sysaux01.dbf                                                  YES
SYSTEM                         /u01/app/oracle/oradata/orcl/system01.dbf                                                  YES
TBSP_1                         /u01/app/oracle/oradata/orcl/tbsp_1.dbf                                                    YES
TBS_01                         /u01/app/oracle/oradata/orcl/tbs_01.dbf                                                    NO
TBS_02                         /u01/app/oracle/oradata/orcl/tbs_02_01.dbf                                                 NO
TBS_02                         /u01/app/oracle/oradata/orcl/tbs_02_02.dbf                                                 NO
TBS_03                         /u01/app/oracle/oradata/orcl/tbs_03.dbf                                                    YES
TBS_04                         /u01/app/oracle/oradata/orcl/tbs_04.dbf                                                    YES

NAME                           DATAFILE_NAME                                                                              AUT
------------------------------ ------------------------------------------------------------------------------------------ ---
TBS_05                         /u01/app/oracle/oradata/orcl/tbs_05.dbf                                                    YES
TBS_BIG_1                      /u01/app/oracle/oradata/orcl/datafilebig_1.dfb                                             NO
TBS_TEST1                      /u01/app/oracle/oradata/orcl/datafile1.dbf                                                 NO
TBS_TEST4                      /u01/app/oracle/oradata/orcl/datafile4.dbf                                                 NO
TBS_TEST5                      /u01/app/oracle/oradata/orcl/datafile5.dbf                                                 YES
TBS_TEST_3                     /u01/app/oracle/oradata/orcl/datafile3.dbf                                                 YES
TEST                           /u01/app/oracle/oradata/orcl/test_01.dbf                                                   NO
TEST2                          /u01/app/oracle/oradata/orcl/test02.dbf                                                    YES
TS_1                           /u01/app/oracle/oradata/orcl/ts1.dbf                                                       NO
TS_2                           /u01/app/oracle/oradata/orcl/ts2.dbf                                                       NO
UNDOTBS1                       /u01/app/oracle/oradata/orcl/undotbs01.dbf                                                 YES

NAME                           DATAFILE_NAME                                                                              AUT
------------------------------ ------------------------------------------------------------------------------------------ ---
USERS                          /u01/app/oracle/oradata/orcl/users01.dbf                                                   YES

23 rows selected.

SYS@orcl>


--更改用户的表空间限额:
--全局:
grant unlimited tablespace to abc;
--针对某个表空间:
alter user abc quota unlimited on test;
--回收:
revoke unlimited tablespace from abc;
alter user abc quota 0 on test;



                  6: 创建一个区管理是本地管理的自动扩展方式的表空间 tbs_06

SYS@orcl>  select distinct t1.name,t2.name datafile_name  ,t.autoextensible from v$tablespace t1,v$datafile t2    ,dba_data_files t where t1.name=t.tablespace_name   and t1.ts# = t2.ts#    order by t1.name asc;

NAME                           DATAFILE_NAME                                                                              AUT
------------------------------ ------------------------------------------------------------------------------------------ ---
COMPRESS_01                    /u01/app/oracle/oradata/orcl/compress_01.dbf                                               NO
COMPRESS_02                    /u01/app/oracle/oradata/orcl/compress_02.dbf                                               NO
EXAMPLE                        /u01/app/oracle/oradata/orcl/example01.dbf                                                 YES
SYSAUX                         /u01/app/oracle/oradata/orcl/sysaux01.dbf                                                  YES
SYSTEM                         /u01/app/oracle/oradata/orcl/system01.dbf                                                  YES
TBSP_1                         /u01/app/oracle/oradata/orcl/tbsp_1.dbf                                                    YES
TBS_01                         /u01/app/oracle/oradata/orcl/tbs_01.dbf                                                    NO
TBS_02                         /u01/app/oracle/oradata/orcl/tbs_02_01.dbf                                                 NO
TBS_02                         /u01/app/oracle/oradata/orcl/tbs_02_02.dbf                                                 NO
TBS_03                         /u01/app/oracle/oradata/orcl/tbs_03.dbf                                                    YES
TBS_04                         /u01/app/oracle/oradata/orcl/tbs_04.dbf                                                    YES

NAME                           DATAFILE_NAME                                                                              AUT
------------------------------ ------------------------------------------------------------------------------------------ ---
TBS_05                         /u01/app/oracle/oradata/orcl/tbs_05.dbf                                                    YES
TBS_BIG_1                      /u01/app/oracle/oradata/orcl/datafilebig_1.dfb                                             NO
TBS_TEST1                      /u01/app/oracle/oradata/orcl/datafile1.dbf                                                 NO
TBS_TEST4                      /u01/app/oracle/oradata/orcl/datafile4.dbf                                                 NO
TBS_TEST5                      /u01/app/oracle/oradata/orcl/datafile5.dbf                                                 YES
TBS_TEST_3                     /u01/app/oracle/oradata/orcl/datafile3.dbf                                                 YES
TEST                           /u01/app/oracle/oradata/orcl/test_01.dbf                                                   NO
TEST2                          /u01/app/oracle/oradata/orcl/test02.dbf                                                    YES
TS_1                           /u01/app/oracle/oradata/orcl/ts1.dbf                                                       NO
TS_2                           /u01/app/oracle/oradata/orcl/ts2.dbf                                                       NO
UNDOTBS1                       /u01/app/oracle/oradata/orcl/undotbs01.dbf                                                 YES

NAME                           DATAFILE_NAME                                                                              AUT
------------------------------ ------------------------------------------------------------------------------------------ ---
USERS                          /u01/app/oracle/oradata/orcl/users01.dbf                                                   YES

23 rows selected.



SYS@orcl> create tablespace tbs_06 datafile '/u01/app/oracle/oradata/orcl/tbs_06.dbf' size 10 m extent management local autoallocate;

Tablespace created.

SYS@orcl>  select distinct t1.name,t2.name datafile_name  ,t.autoextensible from v$tablespace t1,v$datafile t2    ,dba_data_files t where t1.name=t.tablespace_name   and t1.ts# = t2.ts#    order by t1.name asc;

NAME                           DATAFILE_NAME                                                                              AUT
------------------------------ ------------------------------------------------------------------------------------------ ---
COMPRESS_01                    /u01/app/oracle/oradata/orcl/compress_01.dbf                                               NO
COMPRESS_02                    /u01/app/oracle/oradata/orcl/compress_02.dbf                                               NO
EXAMPLE                        /u01/app/oracle/oradata/orcl/example01.dbf                                                 YES
SYSAUX                         /u01/app/oracle/oradata/orcl/sysaux01.dbf                                                  YES
SYSTEM                         /u01/app/oracle/oradata/orcl/system01.dbf                                                  YES
TBSP_1                         /u01/app/oracle/oradata/orcl/tbsp_1.dbf                                                    YES
TBS_01                         /u01/app/oracle/oradata/orcl/tbs_01.dbf                                                    NO
TBS_02                         /u01/app/oracle/oradata/orcl/tbs_02_01.dbf                                                 NO
TBS_02                         /u01/app/oracle/oradata/orcl/tbs_02_02.dbf                                                 NO
TBS_03                         /u01/app/oracle/oradata/orcl/tbs_03.dbf                                                    YES
TBS_04                         /u01/app/oracle/oradata/orcl/tbs_04.dbf                                                    YES

NAME                           DATAFILE_NAME                                                                              AUT
------------------------------ ------------------------------------------------------------------------------------------ ---
TBS_05                         /u01/app/oracle/oradata/orcl/tbs_05.dbf                                                    YES
TBS_06                         /u01/app/oracle/oradata/orcl/tbs_06.dbf                                                    NO
TBS_BIG_1                      /u01/app/oracle/oradata/orcl/datafilebig_1.dfb                                             NO
TBS_TEST1                      /u01/app/oracle/oradata/orcl/datafile1.dbf                                                 NO
TBS_TEST4                      /u01/app/oracle/oradata/orcl/datafile4.dbf                                                 NO
TBS_TEST5                      /u01/app/oracle/oradata/orcl/datafile5.dbf                                                 YES
TBS_TEST_3                     /u01/app/oracle/oradata/orcl/datafile3.dbf                                                 YES
TEST                           /u01/app/oracle/oradata/orcl/test_01.dbf                                                   NO
TEST2                          /u01/app/oracle/oradata/orcl/test02.dbf                                                    YES
TS_1                           /u01/app/oracle/oradata/orcl/ts1.dbf                                                       NO
TS_2                           /u01/app/oracle/oradata/orcl/ts2.dbf                                                       NO

NAME                           DATAFILE_NAME                                                                              AUT
------------------------------ ------------------------------------------------------------------------------------------ ---
UNDOTBS1                       /u01/app/oracle/oradata/orcl/undotbs01.dbf                                                 YES
USERS                          /u01/app/oracle/oradata/orcl/users01.dbf                                                   YES

24 rows selected.

SYS@orcl>


---查看表空间 的段的管理方式,区的分配
SYS@orcl> select segment_space_management,extent_management,allocation_type,tablespace_name from dba_tablespaces where tablespace_name ='TBS_06';

SEGMEN EXTENT_MAN ALLOCATIO TABLESPACE_NAME
------ ---------- --------- ------------------------------
AUTO   LOCAL      SYSTEM    TBS_06

SYS@orcl>


                   7: 创建一个区管理是本地管理的 扩展方式 为 extent management local uniform size 64k  的表空间 tbs_07


----oracle中表,索引,分区等都叫做段,每个段是有多个物理上不连续的区间组成;当段的空间不够是Oracle是通过增加区间来实现的。UNIFORM SIZE就是这个表空间中所有的区间是同样的大小,好处是防止碎片。
SYS@orcl> create tablespace tbs_07 datafile '/u01/app/oracle/oradata/orcl/tbs_07.dbf' size 10m 
extent management
local
uniform
size
64k
   ;

Tablespace created.
/*
有一个initial为65M的表,当要分配新的extent时
1,如果所属的表空间为autoallocate,那么,首先,系统会在64K, 1M, 8M, and 64M找出比64M小,且最大的那个大小。这里便是64M,那么,分配完这一个extent后,还未到达指定的initial大小,继续在4个大小中找,这次符合的是1M
因此,会分配2个extent,大小分别为64M和1M

2,如果所属的表空间为uniform 20M
那么,每个extent固定是20M,要分配>=64M,则需要4个20M的extent


------------------------
如果表空间还剩 1G的这空间未分配,此时,某个表要申请 2G ,有两种情况发生:
1. 如果表空间(数据文件)没有设置为自动增长,则直接报错,大概是 “不能分配 2G 的空间。
2.如果设置为自动增长,则自动再向 OS 申请 1G 的空间,这样就够了2G了。完成分配
2.1 如果数据文件的大小到了极限,则自动增长失败;
2.2 如果磁盘上也没有空间了,则自动增长失败;


*/


SYS@orcl> select segment_space_management,extent_management,allocation_type,tablespace_name from dba_tablespaces where tablespace_name ='TBS_07';

SEGMEN EXTENT_MAN ALLOCATIO TABLESPACE_NAME
------ ---------- --------- ------------------------------
AUTO   LOCAL      UNIFORM   TBS_07


SYS@orcl>   select distinct t1.name,t2.name datafile_name  ,t.autoextensible from v$tablespace t1,v$datafile t2    ,dba_data_files t where t1.name=t.tablespace_name   and t1.ts# = t2.ts#    order by t1.name asc;

NAME                                     DATAFILE_NAME                                                                    AUT
---------------------------------------- -------------------------------------------------------------------------------- ---
COMPRESS_01                              /u01/app/oracle/oradata/orcl/compress_01.dbf                                     NO
COMPRESS_02                              /u01/app/oracle/oradata/orcl/compress_02.dbf                                     NO
EXAMPLE                                  /u01/app/oracle/oradata/orcl/example01.dbf                                       YES
SYSAUX                                   /u01/app/oracle/oradata/orcl/sysaux01.dbf                                        YES
SYSTEM                                   /u01/app/oracle/oradata/orcl/system01.dbf                                        YES
TBSP_1                                   /u01/app/oracle/oradata/orcl/tbsp_1.dbf                                          YES
TBS_01                                   /u01/app/oracle/oradata/orcl/tbs_01.dbf                                          NO
TBS_02                                   /u01/app/oracle/oradata/orcl/tbs_02_01.dbf                                       NO
TBS_02                                   /u01/app/oracle/oradata/orcl/tbs_02_02.dbf                                       NO
TBS_03                                   /u01/app/oracle/oradata/orcl/tbs_03.dbf                                          YES
TBS_04                                   /u01/app/oracle/oradata/orcl/tbs_04.dbf                                          YES

NAME                                     DATAFILE_NAME                                                                    AUT
---------------------------------------- -------------------------------------------------------------------------------- ---
TBS_05                                   /u01/app/oracle/oradata/orcl/tbs_05.dbf                                          YES
TBS_06                                   /u01/app/oracle/oradata/orcl/tbs_06.dbf                                          NO
TBS_07 /u01/app/oracle/oradata/orcl/tbs_07.dbf
NO
TBS_BIG_1                                /u01/app/oracle/oradata/orcl/datafilebig_1.dfb                                   NO
TBS_TEST1                                /u01/app/oracle/oradata/orcl/datafile1.dbf                                       NO
TBS_TEST4                                /u01/app/oracle/oradata/orcl/datafile4.dbf                                       NO
TBS_TEST5                                /u01/app/oracle/oradata/orcl/datafile5.dbf                                       YES
TBS_TEST_3                               /u01/app/oracle/oradata/orcl/datafile3.dbf                                       YES
TEST                                     /u01/app/oracle/oradata/orcl/test_01.dbf                                         NO
TEST2                                    /u01/app/oracle/oradata/orcl/test02.dbf                                          YES
TS_1                                     /u01/app/oracle/oradata/orcl/ts1.dbf                                             NO

NAME                                     DATAFILE_NAME                                                                    AUT
---------------------------------------- -------------------------------------------------------------------------------- ---
TS_2                                     /u01/app/oracle/oradata/orcl/ts2.dbf                                             NO
UNDOTBS1                                 /u01/app/oracle/oradata/orcl/undotbs01.dbf                                       YES
USERS                                    /u01/app/oracle/oradata/orcl/users01.dbf                                         YES

25 rows selected.

SYS@orcl>


                   8: 创建一个区管理是本地管理的 扩展方式 为 extent management local autoallocate segment space management auto  的表空间 tbs_08


/*
EXTENT MANAGEMENT DICTIONARY | LOCAL:指定表空间的扩展方式是使用数据字典管理还是本地化管理,默认为本地化管理。Oracle不推荐使用数据字典表空间。
AUTOALLOCATE | UNIFORM SIZE : 如果采用本地化管理表空间,在表空间扩展时,指定每次盘区扩展的大小是由系统自动指定还是按照等同大小进行。若是按照等同大小进行,则默认每次扩展的大小为1MB.
DEFAULT STORAGE: 指定以后要创建的表、索引及簇的储存参数值,这些参数将影响以后表等的储存参数值。
*/

SYS@orcl> create tablespace tbs_08 datafile '/u01/app/oracle/oradata/orcl/tbs_08.dbf' size 10m 
extent management
local
autoallocate segment
space
management auto;
Tablespace created.

SYS@orcl>   select distinct t1.name,t2.name datafile_name  ,t.autoextensible from v$tablespace t1,v$datafile t2    ,dba_data_files t where t1.name=t.tablespace_name   and t1.ts# = t2.ts#    order by t1.name asc;

NAME                                     DATAFILE_NAME                                                                    AUT
---------------------------------------- -------------------------------------------------------------------------------- ---
COMPRESS_01                              /u01/app/oracle/oradata/orcl/compress_01.dbf                                     NO
COMPRESS_02                              /u01/app/oracle/oradata/orcl/compress_02.dbf                                     NO
EXAMPLE                                  /u01/app/oracle/oradata/orcl/example01.dbf                                       YES
SYSAUX                                   /u01/app/oracle/oradata/orcl/sysaux01.dbf                                        YES
SYSTEM                                   /u01/app/oracle/oradata/orcl/system01.dbf                                        YES
TBSP_1                                   /u01/app/oracle/oradata/orcl/tbsp_1.dbf                                          YES
TBS_01                                   /u01/app/oracle/oradata/orcl/tbs_01.dbf                                          NO
TBS_02                                   /u01/app/oracle/oradata/orcl/tbs_02_01.dbf                                       NO
TBS_02                                   /u01/app/oracle/oradata/orcl/tbs_02_02.dbf                                       NO
TBS_03                                   /u01/app/oracle/oradata/orcl/tbs_03.dbf                                          YES
TBS_04                                   /u01/app/oracle/oradata/orcl/tbs_04.dbf                                          YES

NAME                                     DATAFILE_NAME                                                                    AUT
---------------------------------------- -------------------------------------------------------------------------------- ---
TBS_05                                   /u01/app/oracle/oradata/orcl/tbs_05.dbf                                          YES
TBS_06                                   /u01/app/oracle/oradata/orcl/tbs_06.dbf                                          NO
TBS_07                                   /u01/app/oracle/oradata/orcl/tbs_07.dbf                                          NO
TBS_08                                   /u01/app/oracle/oradata/orcl/tbs_08.dbf                                          NO
TBS_BIG_1                                /u01/app/oracle/oradata/orcl/datafilebig_1.dfb                                   NO
TBS_TEST1                                /u01/app/oracle/oradata/orcl/datafile1.dbf                                       NO
TBS_TEST4                                /u01/app/oracle/oradata/orcl/datafile4.dbf                                       NO
TBS_TEST5                                /u01/app/oracle/oradata/orcl/datafile5.dbf                                       YES
TBS_TEST_3                               /u01/app/oracle/oradata/orcl/datafile3.dbf                                       YES
TEST                                     /u01/app/oracle/oradata/orcl/test_01.dbf                                         NO
TEST2                                    /u01/app/oracle/oradata/orcl/test02.dbf                                          YES

NAME                                     DATAFILE_NAME                                                                    AUT
---------------------------------------- -------------------------------------------------------------------------------- ---
TS_1                                     /u01/app/oracle/oradata/orcl/ts1.dbf                                             NO
TS_2                                     /u01/app/oracle/oradata/orcl/ts2.dbf                                             NO
UNDOTBS1                                 /u01/app/oracle/oradata/orcl/undotbs01.dbf                                       YES
USERS                                    /u01/app/oracle/oradata/orcl/users01.dbf                                         YES

26 rows selected.

SYS@orcl> select segment_space_management,extent_management,allocation_type,tablespace_name from dba_tablespaces where tablespace_name ='TBS_08';

SEGMEN EXTENT_MAN ALLOCATIO TABLESPACE_NAME
------ ---------- --------- ------------------------------
AUTO   LOCAL      SYSTEM    TBS_08

SYS@orcl>


                   9: 创建一个区管理是本地管理的 扩展方式 为 extent management local uniform segment space management auto;  的表空间 tbs_09


SYS@orcl> create tablespace tbs_09 datafile '/u01/app/oracle/oradata/orcl/tbs_09.dbf' size 10m extent management local  uniform  segment space management auto;

Tablespace created.

SYS@orcl> select segment_space_management,extent_management,allocation_type,tablespace_name from dba_tablespaces where tablespace_name ='TBS_09';

SEGMEN EXTENT_MAN ALLOCATIO TABLESPACE_NAME
------ ---------- --------- ------------------------------
AUTO   LOCAL      UNIFORM   TBS_09

SYS@orcl>   select distinct t1.name,t2.name datafile_name  ,t.autoextensible from v$tablespace t1,v$datafile t2    ,dba_data_files t where t1.name=t.tablespace_name   and t1.ts# = t2.ts#    order by t1.name asc;

NAME                                     DATAFILE_NAME                                                                    AUT
---------------------------------------- -------------------------------------------------------------------------------- ---
COMPRESS_01                              /u01/app/oracle/oradata/orcl/compress_01.dbf                                     NO
COMPRESS_02                              /u01/app/oracle/oradata/orcl/compress_02.dbf                                     NO
EXAMPLE                                  /u01/app/oracle/oradata/orcl/example01.dbf                                       YES
SYSAUX                                   /u01/app/oracle/oradata/orcl/sysaux01.dbf                                        YES
SYSTEM                                   /u01/app/oracle/oradata/orcl/system01.dbf                                        YES
TBSP_1                                   /u01/app/oracle/oradata/orcl/tbsp_1.dbf                                          YES
TBS_01                                   /u01/app/oracle/oradata/orcl/tbs_01.dbf                                          NO
TBS_02                                   /u01/app/oracle/oradata/orcl/tbs_02_01.dbf                                       NO
TBS_02                                   /u01/app/oracle/oradata/orcl/tbs_02_02.dbf                                       NO
TBS_03                                   /u01/app/oracle/oradata/orcl/tbs_03.dbf                                          YES
TBS_04                                   /u01/app/oracle/oradata/orcl/tbs_04.dbf                                          YES

NAME                                     DATAFILE_NAME                                                                    AUT
---------------------------------------- -------------------------------------------------------------------------------- ---
TBS_05                                   /u01/app/oracle/oradata/orcl/tbs_05.dbf                                          YES
TBS_06                                   /u01/app/oracle/oradata/orcl/tbs_06.dbf                                          NO
TBS_07                                   /u01/app/oracle/oradata/orcl/tbs_07.dbf                                          NO
TBS_08                                   /u01/app/oracle/oradata/orcl/tbs_08.dbf                                          NO
TBS_09 /u01/app/oracle/oradata/orcl/tbs_09.dbf
NO
TBS_BIG_1                                /u01/app/oracle/oradata/orcl/datafilebig_1.dfb                                   NO
TBS_TEST1                                /u01/app/oracle/oradata/orcl/datafile1.dbf                                       NO
TBS_TEST4                                /u01/app/oracle/oradata/orcl/datafile4.dbf                                       NO
TBS_TEST5                                /u01/app/oracle/oradata/orcl/datafile5.dbf                                       YES
TBS_TEST_3                               /u01/app/oracle/oradata/orcl/datafile3.dbf                                       YES
TEST                                     /u01/app/oracle/oradata/orcl/test_01.dbf                                         NO

NAME                                     DATAFILE_NAME                                                                    AUT
---------------------------------------- -------------------------------------------------------------------------------- ---
TEST2                                    /u01/app/oracle/oradata/orcl/test02.dbf                                          YES
TS_1                                     /u01/app/oracle/oradata/orcl/ts1.dbf                                             NO
TS_2                                     /u01/app/oracle/oradata/orcl/ts2.dbf                                             NO
UNDOTBS1                                 /u01/app/oracle/oradata/orcl/undotbs01.dbf                                       YES
USERS                                    /u01/app/oracle/oradata/orcl/users01.dbf                                         YES

27 rows selected.

SYS@orcl>


                  10: 创建一个区管理是本地管理的 扩展方式 为   extent management local segment space management manual  的表空间 tbs_10


SYS@orcl> create tablespace tbs_10 datafile '/u01/app/oracle/oradata/orcl/tbs_10.dbf' size 10m 
extent management
local
segment
space
management manual;
Tablespace created.

SYS@orcl> select segment_space_management,extent_management,allocation_type,tablespace_name from dba_tablespaces where tablespace_name ='TBS_10';

SEGMEN EXTENT_MAN ALLOCATIO TABLESPACE_NAME
------ ---------- --------- ------------------------------
MANUAL LOCAL      SYSTEM    TBS_10

SYS@orcl>   select distinct t1.name,t2.name datafile_name  ,t.autoextensible from v$tablespace t1,v$datafile t2    ,dba_data_files t where t1.name=t.tablespace_name   and t1.ts# = t2.ts#    order by t1.name asc;

NAME                                     DATAFILE_NAME                                                                    AUT
---------------------------------------- -------------------------------------------------------------------------------- ---
COMPRESS_01                              /u01/app/oracle/oradata/orcl/compress_01.dbf                                     NO
COMPRESS_02                              /u01/app/oracle/oradata/orcl/compress_02.dbf                                     NO
EXAMPLE                                  /u01/app/oracle/oradata/orcl/example01.dbf                                       YES
SYSAUX                                   /u01/app/oracle/oradata/orcl/sysaux01.dbf                                        YES
SYSTEM                                   /u01/app/oracle/oradata/orcl/system01.dbf                                        YES
TBSP_1                                   /u01/app/oracle/oradata/orcl/tbsp_1.dbf                                          YES
TBS_01                                   /u01/app/oracle/oradata/orcl/tbs_01.dbf                                          NO
TBS_02                                   /u01/app/oracle/oradata/orcl/tbs_02_01.dbf                                       NO
TBS_02                                   /u01/app/oracle/oradata/orcl/tbs_02_02.dbf                                       NO
TBS_03                                   /u01/app/oracle/oradata/orcl/tbs_03.dbf                                          YES
TBS_04                                   /u01/app/oracle/oradata/orcl/tbs_04.dbf                                          YES

NAME                                     DATAFILE_NAME                                                                    AUT
---------------------------------------- -------------------------------------------------------------------------------- ---
TBS_05                                   /u01/app/oracle/oradata/orcl/tbs_05.dbf                                          YES
TBS_06                                   /u01/app/oracle/oradata/orcl/tbs_06.dbf                                          NO
TBS_07                                   /u01/app/oracle/oradata/orcl/tbs_07.dbf                                          NO
TBS_08                                   /u01/app/oracle/oradata/orcl/tbs_08.dbf                                          NO
TBS_09                                   /u01/app/oracle/oradata/orcl/tbs_09.dbf                                          NO
TBS_10                                   /u01/app/oracle/oradata/orcl/tbs_10.dbf                                          NO
TBS_BIG_1                                /u01/app/oracle/oradata/orcl/datafilebig_1.dfb                                   NO
TBS_TEST1                                /u01/app/oracle/oradata/orcl/datafile1.dbf                                       NO
TBS_TEST4                                /u01/app/oracle/oradata/orcl/datafile4.dbf                                       NO
TBS_TEST5                                /u01/app/oracle/oradata/orcl/datafile5.dbf                                       YES
TBS_TEST_3                               /u01/app/oracle/oradata/orcl/datafile3.dbf                                       YES

NAME                                     DATAFILE_NAME                                                                    AUT
---------------------------------------- -------------------------------------------------------------------------------- ---
TEST                                     /u01/app/oracle/oradata/orcl/test_01.dbf                                         NO
TEST2                                    /u01/app/oracle/oradata/orcl/test02.dbf                                          YES
TS_1                                     /u01/app/oracle/oradata/orcl/ts1.dbf                                             NO
TS_2                                     /u01/app/oracle/oradata/orcl/ts2.dbf                                             NO
UNDOTBS1                                 /u01/app/oracle/oradata/orcl/undotbs01.dbf                                       YES
USERS                                    /u01/app/oracle/oradata/orcl/users01.dbf                                         YES

28 rows selected.

SYS@orcl>





           16: 创建大表空间


                  1: 创建一个 一般的大文件的表空间 tbs_10


SYS@orcl> create bigfile tablespace tbs_11 datafile '/u01/app/oracle/oradata/orcl/tbs_11.dbf' size 10m ;

Tablespace created.

SYS@orcl>


                  2:创建一个大表空间 初始化大小为10m 如果存在则自动替换,自动扩展每次扩展大小为10m 大小没有限制 在线状态 为本地自动段管理方式 的表空间 tbs_10


---创建一个大表空间 初始化大小为10m  如果存在则自动替换,自动扩展每次扩展大小为10m 大小没有限制 在线状态 为本地自动段管理方式 
SYS@orcl> create bigfile tablespace tbs_12  datafile  '/u01/app/oracle/oradata/orcl/tbs_12_01.dbf' size 10m reuse  autoextend on  next 10m maxsize  unlimited  online extent management  local autoallocate segment  space management auto;

Tablespace created.

SYS@orcl>





           17:压缩表空间


image

                  1::创建一个压缩default compress for oltp表空间 tbs_13

SYS@orcl> create tablespace tbs_13 datafile '/u01/app/oracle/oradata/orcl/tbs_13.dbf' size 10m default
compress
for
oltp
;

Tablespace created.



SYS@orcl> select segment_space_management,extent_management,allocation_type,tablespace_name from dba_tablespaces where tablespace_name ='TBS_13';

SEGMEN EXTENT_MAN ALLOCATIO TABLESPACE_NAME
------ ---------- --------- ------------------------------
AUTO   LOCAL      SYSTEM    TBS_13

SYS@orcl>   select distinct t1.name,t2.name datafile_name  ,t.autoextensible from v$tablespace t1,v$datafile t2    ,dba_data_files t where t1.name=t.tablespace_name   and t1.ts# = t2.ts#    order by t1.name asc;

NAME                                     DATAFILE_NAME                                                                    AUT
---------------------------------------- -------------------------------------------------------------------------------- ---
COMPRESS_01                              /u01/app/oracle/oradata/orcl/compress_01.dbf                                     NO
COMPRESS_02                              /u01/app/oracle/oradata/orcl/compress_02.dbf                                     NO
EXAMPLE                                  /u01/app/oracle/oradata/orcl/example01.dbf                                       YES
SYSAUX                                   /u01/app/oracle/oradata/orcl/sysaux01.dbf                                        YES
SYSTEM                                   /u01/app/oracle/oradata/orcl/system01.dbf                                        YES
TBSP_1                                   /u01/app/oracle/oradata/orcl/tbsp_1.dbf                                          YES
TBS_01                                   /u01/app/oracle/oradata/orcl/tbs_01.dbf                                          NO
TBS_02                                   /u01/app/oracle/oradata/orcl/tbs_02_01.dbf                                       NO
TBS_02                                   /u01/app/oracle/oradata/orcl/tbs_02_02.dbf                                       NO
TBS_03                                   /u01/app/oracle/oradata/orcl/tbs_03.dbf                                          YES
TBS_04                                   /u01/app/oracle/oradata/orcl/tbs_04.dbf                                          YES

NAME                                     DATAFILE_NAME                                                                    AUT
---------------------------------------- -------------------------------------------------------------------------------- ---
TBS_05                                   /u01/app/oracle/oradata/orcl/tbs_05.dbf                                          YES
TBS_06                                   /u01/app/oracle/oradata/orcl/tbs_06.dbf                                          NO
TBS_07                                   /u01/app/oracle/oradata/orcl/tbs_07.dbf                                          NO
TBS_08                                   /u01/app/oracle/oradata/orcl/tbs_08.dbf                                          NO
TBS_09                                   /u01/app/oracle/oradata/orcl/tbs_09.dbf                                          NO
TBS_10                                   /u01/app/oracle/oradata/orcl/tbs_10.dbf                                          NO
TBS_11                                   /u01/app/oracle/oradata/orcl/tbs_11.dbf                                          NO
TBS_12                                   /u01/app/oracle/oradata/orcl/tbs_12_01.dbf                                       YES
TBS_13                                   /u01/app/oracle/oradata/orcl/tbs_13.dbf                                          NO
TBS_BIG_1                                /u01/app/oracle/oradata/orcl/datafilebig_1.dfb                                   NO
TBS_TEST1                                /u01/app/oracle/oradata/orcl/datafile1.dbf                                       NO

NAME                                     DATAFILE_NAME                                                                    AUT
---------------------------------------- -------------------------------------------------------------------------------- ---
TBS_TEST4                                /u01/app/oracle/oradata/orcl/datafile4.dbf                                       NO
TBS_TEST5                                /u01/app/oracle/oradata/orcl/datafile5.dbf                                       YES
TBS_TEST_3                               /u01/app/oracle/oradata/orcl/datafile3.dbf                                       YES
TEST                                     /u01/app/oracle/oradata/orcl/test_01.dbf                                         NO
TEST2                                    /u01/app/oracle/oradata/orcl/test02.dbf                                          YES
TS_1                                     /u01/app/oracle/oradata/orcl/ts1.dbf                                             NO
TS_2                                     /u01/app/oracle/oradata/orcl/ts2.dbf                                             NO
UNDOTBS1                                 /u01/app/oracle/oradata/orcl/undotbs01.dbf                                       YES
USERS                                    /u01/app/oracle/oradata/orcl/users01.dbf                                         YES

31 rows selected.

SYS@orcl>


                  2::创建一个大文件压缩default compress for oltp表空间 tbs_14


SYS@orcl> create bigfile tablespace tbs_14 datafile '/u01/app/oracle/oradata/orcl/tbs_14.dbf' size 10m default compress for oltp;

Tablespace created.

SYS@orcl> select segment_space_management,extent_management,allocation_type,tablespace_name from dba_tablespaces where tablespace_name ='TBS_14';

SEGMEN EXTENT_MAN ALLOCATIO TABLESPACE_NAME
------ ---------- --------- ------------------------------
AUTO   LOCAL      SYSTEM    TBS_14

SYS@orcl>   select distinct t1.name,t2.name datafile_name  ,t.autoextensible from v$tablespace t1,v$datafile t2    ,dba_data_files t where t1.name=t.tablespace_name   and t1.ts# = t2.ts#    order by t1.name asc;

NAME                                     DATAFILE_NAME                                                                    AUT
---------------------------------------- -------------------------------------------------------------------------------- ---
COMPRESS_01                              /u01/app/oracle/oradata/orcl/compress_01.dbf                                     NO
COMPRESS_02                              /u01/app/oracle/oradata/orcl/compress_02.dbf                                     NO
EXAMPLE                                  /u01/app/oracle/oradata/orcl/example01.dbf                                       YES
SYSAUX                                   /u01/app/oracle/oradata/orcl/sysaux01.dbf                                        YES
SYSTEM                                   /u01/app/oracle/oradata/orcl/system01.dbf                                        YES
TBSP_1                                   /u01/app/oracle/oradata/orcl/tbsp_1.dbf                                          YES
TBS_01                                   /u01/app/oracle/oradata/orcl/tbs_01.dbf                                          NO
TBS_02                                   /u01/app/oracle/oradata/orcl/tbs_02_01.dbf                                       NO
TBS_02                                   /u01/app/oracle/oradata/orcl/tbs_02_02.dbf                                       NO
TBS_03                                   /u01/app/oracle/oradata/orcl/tbs_03.dbf                                          YES
TBS_04                                   /u01/app/oracle/oradata/orcl/tbs_04.dbf                                          YES

NAME                                     DATAFILE_NAME                                                                    AUT
---------------------------------------- -------------------------------------------------------------------------------- ---
TBS_05                                   /u01/app/oracle/oradata/orcl/tbs_05.dbf                                          YES
TBS_06                                   /u01/app/oracle/oradata/orcl/tbs_06.dbf                                          NO
TBS_07                                   /u01/app/oracle/oradata/orcl/tbs_07.dbf                                          NO
TBS_08                                   /u01/app/oracle/oradata/orcl/tbs_08.dbf                                          NO
TBS_09                                   /u01/app/oracle/oradata/orcl/tbs_09.dbf                                          NO
TBS_10                                   /u01/app/oracle/oradata/orcl/tbs_10.dbf                                          NO
TBS_11                                   /u01/app/oracle/oradata/orcl/tbs_11.dbf                                          NO
TBS_12                                   /u01/app/oracle/oradata/orcl/tbs_12_01.dbf                                       YES
TBS_13                                   /u01/app/oracle/oradata/orcl/tbs_13.dbf                                          NO
TBS_14                                   /u01/app/oracle/oradata/orcl/tbs_14.dbf                                          NO
TBS_BIG_1                                /u01/app/oracle/oradata/orcl/datafilebig_1.dfb                                   NO

NAME                                     DATAFILE_NAME                                                                    AUT
---------------------------------------- -------------------------------------------------------------------------------- ---
TBS_TEST1                                /u01/app/oracle/oradata/orcl/datafile1.dbf                                       NO
TBS_TEST4                                /u01/app/oracle/oradata/orcl/datafile4.dbf                                       NO
TBS_TEST5                                /u01/app/oracle/oradata/orcl/datafile5.dbf                                       YES
TBS_TEST_3                               /u01/app/oracle/oradata/orcl/datafile3.dbf                                       YES
TEST                                     /u01/app/oracle/oradata/orcl/test_01.dbf                                         NO
TEST2                                    /u01/app/oracle/oradata/orcl/test02.dbf                                          YES
TS_1                                     /u01/app/oracle/oradata/orcl/ts1.dbf                                             NO
TS_2                                     /u01/app/oracle/oradata/orcl/ts2.dbf                                             NO
UNDOTBS1                                 /u01/app/oracle/oradata/orcl/undotbs01.dbf                                       YES
USERS                                    /u01/app/oracle/oradata/orcl/users01.dbf                                         YES

32 rows selected.

SYS@orcl>


                  3::创建一个普通表空间 tbs_15 ,然后在修改为 压缩不空间

---创建一个普通表空间
SYS@orcl> create tablespace tbs_15 datafile '/u01/app/oracle/oradata/orcl/tbs_15.dbf' size 10m ;

Tablespace created.
---修改为压缩表空间
SYS@orcl> alter tablespace tbs_15 default compress for oltp;

Tablespace altered.
 ---查看表空间的压缩情况

SYS@orcl> select tablespace_name,compress_for from dba_tablespaces;

TABLESPACE_NAME                COMPRESS_FOR
------------------------------ ------------
SYSTEM
SYSAUX
UNDOTBS1
TEMP
USERS
EXAMPLE
TBS_TEST1
TBS_TEST_3
TBS_TEST4
TBS_TEST5
TBS_BIG_1

TABLESPACE_NAME                COMPRESS_FOR
------------------------------ ------------
TEMP_1
TBS_EXAMPLE
TEMP_01
TP1
TP2
TS_1
TS_2
TBSP_1
COMPRESS_01                    OLTP
COMPRESS_02                    OLTP
TEST

TABLESPACE_NAME                COMPRESS_FOR
------------------------------ ------------
TEST2
TBS_01
TBS_02
TBS_03
TBS_04
TBS_05
TBS_06
TBS_07
TBS_08
TBS_09
TBS_10

TABLESPACE_NAME                COMPRESS_FOR
------------------------------ ------------
TBS_11
TBS_12
TBS_13                         OLTP
TBS_14                         OLTP
TBS_15                         OLTP

38 rows selected.
---取消表空间为压缩表空间
SYS@orcl> alter tablespace tbs_15 default nocompress;

Tablespace altered.
---查询表空间的压缩情况
SYS@orcl> select tablespace_name,compress_for from dba_tablespaces;

TABLESPACE_NAME                COMPRESS_FOR
------------------------------ ------------
SYSTEM
SYSAUX
UNDOTBS1
TEMP
USERS
EXAMPLE
TBS_TEST1
TBS_TEST_3
TBS_TEST4
TBS_TEST5
TBS_BIG_1

TABLESPACE_NAME                COMPRESS_FOR
------------------------------ ------------
TEMP_1
TBS_EXAMPLE
TEMP_01
TP1
TP2
TS_1
TS_2
TBSP_1
COMPRESS_01                    OLTP   --压缩表空间状态
COMPRESS_02                    OLTP   --压缩表空间状态
TEST

TABLESPACE_NAME                COMPRESS_FOR
------------------------------ ------------
TEST2
TBS_01
TBS_02
TBS_03
TBS_04
TBS_05
TBS_06
TBS_07
TBS_08
TBS_09
TBS_10

TABLESPACE_NAME                COMPRESS_FOR
------------------------------ ------------
TBS_11
TBS_12
TBS_13                         OLTP   --压缩表空间状态
TBS_14                         OLTP   --压缩表空间状态
TBS_15

38 rows selected.

SYS@orcl>


                  4::在 tbs_15 表空间里创建表


---把 普通表空间 tbs_15 修改为压缩表空间
SYS@orcl> alter tablespace tbs_15 default compress;

Tablespace altered.
---在压缩表空间 tbs_15  里创建 oltp 压缩表   t_tbs15 
SYS@orcl> create table t_tbs15 compress for oltp tablespace tbs_15 as select * from scott.emp;

Table created.
---在压缩表空间 tbs_15  里创建 非 oltp 压缩表 t1_tbs15 
SYS@orcl> create table t1_tbs15 tablespace tbs_15 as select * from scott.emp;

Table created.

----对压缩表和非压缩表进行分析
SYS@orcl> analyze table t_tbs15 compute statistics;

Table analyzed.

SYS@orcl> analyze table t1_tbs15 compute statistics;

Table analyzed.
----结论:在 oltp 压缩表空间里创建表,如果不指定默认的压缩方式,默认是按照表空间额压缩方式oltp 方式来进行压缩  


SYS@orcl> select table_name ,blocks,compress_for from dba_tables where table_name in ('T_TBS15','T1_TBS15');

TABLE_NAME                         BLOCKS COMPRESS_FOR
------------------------------ ---------- ------------
T1_TBS15                                4 BASIC
T_TBS15                                 4 OLTP
---创建表 t2_tbs15
SYS@orcl> create table t2_tbs15 compress tablespace tbs_15 as select * from scott.emp;

Table created.
-----结论:如果在 oltp 压缩表空间里创建表的时候,指定压缩方式为 basic compress ,那么创建的表示按照 basic compression 压缩;说明表级别的压缩方式会覆盖表空间的压缩方式

SYS@orcl> select table_name ,blocks,compress_for from dba_tables where table_name in ('T_TBS15','T1_TBS15','T2_TBS15');

TABLE_NAME                         BLOCKS COMPRESS_FOR
------------------------------ ---------- ------------
T1_TBS15                                4 BASIC
T_TBS15                                 4 OLTP
T2_TBS15                                  BASIC

---压缩索引
SYS@orcl> create index ind_t_tbs15 on t_tbs15(empno,ename) tablespace tbs_15;

Index created.

SYS@orcl> create index ind_t1_tbs15 on t1_tbs15(empno,ename) tablespace tbs_15;

Index created.

---结论:虽然是在压缩表空间里创建索引,都是索引仍然是 disabled ;没有压缩,所以如果要压缩索引,必须手动指明 compress 

SYS@orcl> select index_name,compression,leaf_blocks,tablespace_name from user_indexes where table_name in ('T_TBS15','T1_TBS15');

INDEX_NAME                     COMPRESS LEAF_BLOCKS TABLESPACE_NAME
------------------------------ -------- ----------- ------------------------------
IND_T_TBS15                    DISABLED           1 TBS_15
IND_T1_TBS15                   DISABLED           1 TBS_15

SYS@orcl>



           18:创建一个临时表空间

                        临时表空间概念

临时表空间用来管理数据库排序操作以及用于存储临时表、中间排序结果等临时对象,当ORACLE里需要用到SORT的时候,并且当PGA中sort_area_size大小不够时,将会把数据放入临时表空间里进行排序。像数据库中一些操作: CREATE INDEX、 ANALYZE、SELECT DISTINCT、ORDER BY、GROUP BY、 UNION ALL、 INTERSECT、MINUS、SORT-MERGE JOINS、HASH JOIN等都可能会用到临时表空间。当操作完成后,系统会自动清理临时表空间中的临时对象,自动释放临时段。这里的释放只是标记为空闲、可以重用,其实实质占用的磁盘空间并没有真正释放。这也是临时表空间有时会不断增大的原因。

临时表空间存储大规模排序操作(小规模排序操作会直接在RAM里完成,大规模排序才需要磁盘排序Disk Sort)和散列操作的中间结果.它跟永久表空间不同的地方在于它由临时数据文件(temporary files)组成的,而不是永久数据文件(datafiles)。临时表空间不会存储永久类型的对象,所以它不会也不需要备份。另外,对临时数据文件的操作不产生redo日志,不过会生成undo日志。

创建临时表空间或临时表空间添加临时数据文件时,即使临时数据文件很大,添加过程也相当快。这是因为ORACLE的临时数据文件是一类特殊的数据文件:稀疏文件(Sparse File),当临时表空间文件创建时,它只会写入文件头部和最后块信息(only writes to the header and last block of the file)。它的空间是延后分配的.这就是你创建临时表空间或给临时表空间添加数据文件飞快的原因。

另外,临时表空间是NOLOGGING模式以及它不保存永久类型对象,因此即使数据库损毁,做Recovery也不需要恢复Temporary Tablespace。


                        临时表空间信息

-----查看实例的临时表空间

SYS@orcl> col PROPERTY_NAME for a30;
SYS@orcl> col PROPERTY_VALUE for a50;
SYS@orcl> select PROPERTY_NAME, PROPERTY_VALUE FROM DATABASE_PROPERTIES   WHERE PROPERTY_NAME='DEFAULT_TEMP_TABLESPACE';

PROPERTY_NAME                  PROPERTY_VALUE
------------------------------ --------------------------------------------------
DEFAULT_TEMP_TABLESPACE        TBS_TEMP_GROUP_1



-----


SYS@orcl> SELECT USERNAME, TEMPORARY_TABLESPACE FROM DBA_USERS;

USERNAME                       TEMPORARY_TABLESPACE
------------------------------ ------------------------------
HR                             GROUP3
SH                             TBS_TEMP_GROUP_1
SCOTT                          TBS_TEMP_GROUP_1
SPATIAL_WFS_ADMIN_USR          TBS_TEMP_GROUP_1
SPATIAL_CSW_ADMIN_USR          TBS_TEMP_GROUP_1
APEX_PUBLIC_USER               TBS_TEMP_GROUP_1
OE                             TBS_TEMP_GROUP_1
DIP                            TBS_TEMP_GROUP_1
IX                             TBS_TEMP_GROUP_1
MDDATA                         TBS_TEMP_GROUP_1
PM                             TBS_TEMP_GROUP_1

USERNAME                       TEMPORARY_TABLESPACE
------------------------------ ------------------------------
BI                             TBS_TEMP_GROUP_1
XS$NULL                        TBS_TEMP_GROUP_1
ORACLE_OCM                     TBS_TEMP_GROUP_1
DONGFANG                       TBS_TEMP_GROUP_1
XIFANG                         TBS_TEMP_GROUP_1
EAST                           TBS_TEMP_GROUP_1
MR                             TBS_TEMP_GROUP_1
DBSNMP                         TBS_TEMP_GROUP_1
SYSMAN                         TBS_TEMP_GROUP_1
OLAPSYS                        TBS_TEMP_GROUP_1
SI_INFORMTN_SCHEMA             TBS_TEMP_GROUP_1

USERNAME                       TEMPORARY_TABLESPACE
------------------------------ ------------------------------
OWBSYS                         TBS_TEMP_GROUP_1
ORDPLUGINS                     TBS_TEMP_GROUP_1
XDB                            TBS_TEMP_GROUP_1
ANONYMOUS                      TBS_TEMP_GROUP_1
CTXSYS                         TBS_TEMP_GROUP_1
ORDDATA                        TBS_TEMP_GROUP_1
OWBSYS_AUDIT                   TBS_TEMP_GROUP_1
APEX_030200                    TBS_TEMP_GROUP_1
APPQOSSYS                      TBS_TEMP_GROUP_1
WMSYS                          TBS_TEMP_GROUP_1
EXFSYS                         TBS_TEMP_GROUP_1

USERNAME                       TEMPORARY_TABLESPACE
------------------------------ ------------------------------
ORDSYS                         TBS_TEMP_GROUP_1
MDSYS                          TBS_TEMP_GROUP_1
FLOWS_FILES                    TBS_TEMP_GROUP_1
SYSTEM                         TBS_TEMP_GROUP_1
SYS                            TBS_TEMP_GROUP_1
MGMT_VIEW                      TBS_TEMP_GROUP_1
OUTLN                          TBS_TEMP_GROUP_1

40 rows selected.


------查看临时表空间信息:

SYS@orcl> SET LINESIZE 1200;
SYS@orcl> COL NAME FOR A60;
SYS@orcl> SELECT FILE#                        AS FILE_NUMBER
         ,NAME                           AS NAME
         ,CREATION_TIME                  AS CREATION_TIME
         ,BLOCK_SIZE                     AS BLOCK_SIZE
         ,BYTES/1024/1024/1024           AS "FILE_SIZE(G)"
         ,CREATE_BYTES/1024/1024/1024    AS "INIT_SIZE(G)"
         ,STATUS                         AS STATUS
         ,ENABLED                        AS ENABLED
     FROM V$TEMPFILE;

FILE_NUMBER NAME                                                         CREATION_ BLOCK_SIZE FILE_SIZE(G) INIT_SIZE(G) STATUS  ENABLED
----------- ------------------------------------------------------------ --------- ---------- ------------ ------------ ------- ----------
          1 /u01/app/oracle/oradata/orcl/temp.dbf                        11-MAR-18       8192   .048828125   .048828125 ONLINE  READ WRITE
          6 /u01/app/oracle/oradata/orcl/temp_01.dbf                     12-MAR-18       8192    .29296875    .29296875 ONLINE  READ WRITE
          2 /u01/app/oracle/oradata/orcl/temp_1.dbf                      11-MAR-18       8192   .048828125   .048828125 ONLINE  READ WRITE
          3 /u01/app/oracle/oradata/orcl/temp_2.dbf                      11-MAR-18       8192            3            2 ONLINE  READ WRITE
          4 /home/oracle/oracle_system_files_back/datafiles_bak/datafile 11-MAR-18       8192            2            2 ONLINE  READ WRITE
            s_bak_20180311/temp_6.dbf

          5 /u01/app/oracle/oradata/orcl/tbs_example .dbf                11-MAR-18       8192   .048828125   .048828125 ONLINE  READ WRITE
          7 /u01/app/oracle/oradata/orcl/tp1.dbf                         12-MAR-18       8192    .09765625    .09765625 ONLINE  READ WRITE
          8 /u01/app/oracle/oradata/orcl/tp2.dbf                         12-MAR-18       8192    .09765625    .09765625 ONLINE  READ WRITE
          9 /u01/app/oracle/oradata/orcl/tbs_16_01.dbf                   24-MAY-18       8192   .009765625   .009765625 ONLINE  READ WRITE

FILE_NUMBER NAME                                                         CREATION_ BLOCK_SIZE FILE_SIZE(G) INIT_SIZE(G) STATUS  ENABLED
----------- ------------------------------------------------------------ --------- ---------- ------------ ------------ ------- ----------
         10 /u01/app/oracle/oradata/orcl/tbs_17_01.dbf                   24-MAY-18       8192   .009765625   .009765625 ONLINE  READ WRITE
         11 /u01/app/oracle/oradata/orcl/tbs_17_02.dbf                   24-MAY-18       8192   .009765625   .009765625 ONLINE  READ WRITE
         12 /u01/app/oracle/oradata/orcl/tbs_19_group_temp.dbf           30-MAY-18       8192   .009765625   .009765625 ONLINE  READ WRITE
         13 /u01/app/oracle/oradata/orcl/tbs_20_group_temp.dbf           30-MAY-18       8192   .009765625   .009765625 ONLINE  READ WRITE

13 rows selected.

SYS@orcl>


官方文档关于V$TEMPFILE的介绍如下

Column

Datatype

Description

FILE#

NUMBER

Absolute file number

CREATION_CHANGE#

NUMBER

Creation System Change Number (SCN)

CREATION_TIME

DATE

Creation time

TS#

NUMBER

Tablespace number

RFILE#

NUMBER

Relative file number in the tablespace

STATUS

VARCHAR2(7)

Status of the file (OFFLINE|ONLINE)

ENABLED

VARCHAR2(10)

Enabled for read and/or write

BYTES

NUMBER

Size of the file in bytes (from the file header)

BLOCKS

NUMBER

Size of the file in blocks (from the file header)

CREATE_BYTES

NUMBER

Creation size of the file (in bytes)

BLOCK_SIZE

NUMBER

Block size for the file

NAME

VARCHAR2(513)

Name of the file



SYS@orcl>     COL TABLESPACE_NAME FOR A30;
SYS@orcl> COL FILE_NAME FOR A60;
SYS@orcl> SELECT TABLESPACE_NAME                 AS TABLESPACE_NAME
            ,FILE_NAME                     AS FILE_NAME
            ,BLOCKS                        AS BLOCKS
            ,STATUS                        AS STATUS
            ,AUTOEXTENSIBLE                AS AUTOEXTENSIBLE
            ,BYTES/1024/1024/1024          AS "FILE_SIZE(G)"
            ,DECODE(MAXBYTES, 0, BYTES/1024/1024/1024,
                              MAXBYTES/1024/1024/1024)
                                           AS "MAX_SIZE(G)"
            ,INCREMENT_BY                  AS "INCREMENT_BY"
            ,USER_BYTES/1024/1024/1024     AS "USEFUL_SIZE"
    FROM DBA_TEMP_FILES;

TABLESPACE_NAME                FILE_NAME                                                        BLOCKS STATUS  AUT FILE_SIZE(G) MAX_SIZE(G) INCREMENT_BY USEFUL_SIZE
------------------------------ ------------------------------------------------------------ ---------- ------- --- ------------ ----------- ------------ -----------
TEMP                           /u01/app/oracle/oradata/orcl/temp.dbf                              6400 ONLINE  YES   .048828125           2         6400  .047851563
TEMP_01                        /u01/app/oracle/oradata/orcl/temp_01.dbf                          38400 ONLINE  NO     .29296875   .29296875            0  .291992188
TEMP_1                         /u01/app/oracle/oradata/orcl/temp_1.dbf                            6400 ONLINE  YES   .048828125           2         6400  .047851563
TEMP_1                         /u01/app/oracle/oradata/orcl/temp_2.dbf                          393216 ONLINE  NO             3           3            0  2.99902344
TEMP_1                         /home/oracle/oracle_system_files_back/datafiles_bak/datafile     262144 ONLINE  YES            2  31.9999847        12800  1.99902344
                               s_bak_20180311/temp_6.dbf

TBS_EXAMPLE                    /u01/app/oracle/oradata/orcl/tbs_example .dbf                      6400 ONLINE  YES   .048828125           2         6400  .047851563
TP1                            /u01/app/oracle/oradata/orcl/tp1.dbf                              12800 ONLINE  NO     .09765625   .09765625            0  .096679688
TP2                            /u01/app/oracle/oradata/orcl/tp2.dbf                              12800 ONLINE  NO     .09765625   .09765625            0  .096679688
TBS_16                         /u01/app/oracle/oradata/orcl/tbs_16_01.dbf                         1280 ONLINE  YES   .009765625  31.9999847         1280  .008789063

TABLESPACE_NAME                FILE_NAME                                                        BLOCKS STATUS  AUT FILE_SIZE(G) MAX_SIZE(G) INCREMENT_BY USEFUL_SIZE
------------------------------ ------------------------------------------------------------ ---------- ------- --- ------------ ----------- ------------ -----------
TBS_17                         /u01/app/oracle/oradata/orcl/tbs_17_01.dbf                         1280 ONLINE  NO    .009765625  .009765625            0  .008789063
TBS_17                         /u01/app/oracle/oradata/orcl/tbs_17_02.dbf                         1280 ONLINE  YES   .009765625  31.9999847         1280  .008789063
TBS_19_GROUP                   /u01/app/oracle/oradata/orcl/tbs_19_group_temp.dbf                 1280 ONLINE  NO    .009765625  .009765625            0  .008789063
TBS_20_GROUP                   /u01/app/oracle/oradata/orcl/tbs_20_group_temp.dbf                 1280 ONLINE  NO    .009765625  .009765625            0  .008789063

13 rows selected.

SYS@orcl>

DBA_TEMP_FILES describes all temporary files (tempfiles) in the database.

Column

Datatype

NULL

Description

FILE_NAME

VARCHAR2(513)

Name of the database temp file

FILE_ID

NUMBER

File identifier number of the database temp file

TABLESPACE_NAME

VARCHAR2(30)

NOT NULL

Name of the tablespace to which the file belongs

BYTES

NUMBER

Size of the file (in bytes)

BLOCKS

NUMBER

Size of the file (in Oracle blocks)

STATUS

CHAR(9)

File status:

·

· AVAILABLE

RELATIVE_FNO

NUMBER

Tablespace-relative file number

AUTOEXTENSIBLE

VARCHAR2(3)

Indicates whether the file is autoextensible (YES) or not (NO)

MAXBYTES

NUMBER

maximum size of the file (in bytes)

MAXBLOCKS

NUMBER

Maximum size of the file (in Oracle blocks)

INCREMENT_BY

NUMBER

Default increment for autoextension

USER_BYTES

NUMBER

Size of the useful portion of the file (in bytes)

USER_BLOCKS

NUMBER

Size of the useful portion of the file (in Oracle blocks)


SYS@orcl> SELECT BYTES,BLOCKS,  USER_BYTES, USER_BLOCKS,
            BLOCKS -USER_BLOCKS AS SYSTEM_USED
         FROM DBA_TEMP_FILES;

     BYTES     BLOCKS USER_BYTES USER_BLOCKS SYSTEM_USED
---------- ---------- ---------- ----------- -----------
  52428800       6400   51380224        6272         128
 314572800      38400  313524224       38272         128
  52428800       6400   51380224        6272         128
3221225472     393216 3220176896      393088         128
2147483648     262144 2146435072      262016         128
  52428800       6400   51380224        6272         128
 104857600      12800  103809024       12672         128
 104857600      12800  103809024       12672         128
  10485760       1280    9437184        1152         128
  10485760       1280    9437184        1152         128
  10485760       1280    9437184        1152         128

     BYTES     BLOCKS USER_BYTES USER_BLOCKS SYSTEM_USED
---------- ---------- ---------- ----------- -----------
  10485760       1280    9437184        1152         128
  10485760       1280    9437184        1152         128

13 rows selected.
这四列中, BYTES , BLOCKS 显示的是临时文件有多少BYTE大小,包含多少个数据块。而USER_BYTES,USER_BLOCKS是可用的BYTE和数据块个数。因此,我们可以知道临时文件中有一部分是被系统占用的,大概可以理解成文件头信息,这一部分大小是128个block,如下图所示:




 

                        管理临时表空间


                                   创建临时表空间

下面是一个简单的创建临时表空间的例子,具体很多细节可以参考官方文档,这里省略,不做过多介绍。

http://docs.oracle.com/cd/B10501_01/server.920/a96540/statements_75a.htm

http://docs.oracle.com/cd/B28359_01/server.111/b28310/tspaces002.htm#ADMIN11366


SYS@orcl> create temporary tablespace tbs_16 tempfile '/u01/app/oracle/oradata/orcl/tbs_16_01.dbf' size 10m  reuse autoextend on next 10m maxsize unlimited ;

Tablespace created.


SYS@orcl> create temporary tablespace tbs_17 tempfile '/u01/app/oracle/oradata/orcl/tbs_17_01.dbf' size 10m reuse , '/u01/app/oracle/oradata/orcl/tbs_17_02.dbf' size 10m   reuse autoextend on next 10m maxsize unlimited  ;

Tablespace created.

SYS@orcl>


                                   增加数据文件

当临时表空间太小时,就需要扩展临时表空间(添加数据文件、增大数据文件、设置文件自动扩展);有时候需要将临时数据文件分布到不同的磁盘分区中,提升IO性能,也需要通过删除、增加临时表空间数据文件。

SYS@orcl>  SELECT TABLESPACE_NAME  AS TABLESPACE_NAME  ,FILE_NAME      AS FILE_NAME ,BLOCKS AS BLOCKS  ,STATUS AS STATUS ,AUTOEXTENSIBLE AS AUTOEXTENSIBLE  ,BYTES/1024/1024/1024  AS "FILE_SIZE(G)"  ,DECODE(MAXBYTES, 0, BYTES/1024/1024/1024,  MAXBYTES/1024/1024/1024)     AS "MAX_SIZE(G)"  ,INCREMENT_BY   AS "INCREMENT_BY" ,USER_BYTES/1024/1024/1024     AS "USEFUL_SIZE"  FROM DBA_TEMP_FILES where TABLESPACE_NAME='TBS_16'  ;

TABLESPACE_NAME                FILE_NAME                                                        BLOCKS STATUS  AUT FILE_SIZE(G) MAX_SIZE(G) INCREMENT_BY USEFUL_SIZE
------------------------------ ------------------------------------------------------------ ---------- ------- --- ------------ ----------- ------------ -----------
TBS_16                         /u01/app/oracle/oradata/orcl/tbs_16_01.dbf                         1280 ONLINE  YES   .009765625  31.9999847         1280  .008789063

SYS@orcl>


SYS@orcl> alter tablespace TBS_16  add  tempfile '/u01/app/oracle/oradata/orcl/tbs_16_02.dbf' size 10m autoextend on next 10m maxsize unlimited;

Tablespace altered.

SYS@orcl>  SELECT TABLESPACE_NAME  AS TABLESPACE_NAME  ,FILE_NAME      AS FILE_NAME ,BLOCKS AS BLOCKS  ,STATUS AS STATUS ,AUTOEXTENSIBLE AS AUTOEXTENSIBLE  ,BYTES/1024/1024/1024  AS "FILE_SIZE(G)"  ,DECODE(MAXBYTES, 0, BYTES/1024/1024/1024,  MAXBYTES/1024/1024/1024)     AS "MAX_SIZE(G)"  ,INCREMENT_BY   AS "INCREMENT_BY" ,USER_BYTES/1024/1024/1024     AS "USEFUL_SIZE"  FROM DBA_TEMP_FILES where TABLESPACE_NAME='TBS_16'  ;

TABLESPACE_NAME                FILE_NAME                                                        BLOCKS STATUS  AUT FILE_SIZE(G) MAX_SIZE(G) INCREMENT_BY USEFUL_SIZE
------------------------------ ------------------------------------------------------------ ---------- ------- --- ------------ ----------- ------------ -----------
TBS_16                         /u01/app/oracle/oradata/orcl/tbs_16_01.dbf                         1280 ONLINE  YES   .009765625  31.9999847         1280  .008789063
TBS_16                         /u01/app/oracle/oradata/orcl/tbs_16_02.dbf                         1280 ONLINE  YES   .009765625  31.9999847         1280  .008789063

SYS@orcl>


                                   删除数据文件

SYS@orcl> alter tablespace TBS_16 drop tempfile '/u01/app/oracle/oradata/orcl/tbs_16_02.dbf';

Tablespace altered.

SYS@orcl>

注意:这种删除临时表空间的写法会将对应的物理文件删除。

或者:

SYS@orcl> alter database tempfile '/u01/app/oracle/oradata/orcl/tbs_16_02.dbf' drop including datafiles;

Database altered.

SYS@orcl>

注意:删除临时表空间的临时数据文件时,不需要指定INCLUDING DATAFILES 选项也会真正删除物理文件,否则需要手工删除物理文件。


                                   调整文件大小

SYS@orcl> alter tablespace TBS_16  add  tempfile '/u01/app/oracle/oradata/orcl/tbs_16_02.dbf' size 10m autoextend on next 10m maxsize unlimited;

Tablespace altered.

SYS@orcl>  SELECT TABLESPACE_NAME  AS TABLESPACE_NAME  ,FILE_NAME      AS FILE_NAME ,BLOCKS AS BLOCKS  ,STATUS AS STATUS ,AUTOEXTENSIBLE AS AUTOEXTENSIBLE  ,BYTES/1024/1024/1024  AS "FILE_SIZE(G)"  ,DECODE(MAXBYTES, 0, BYTES/1024/1024/1024,  MAXBYTES/1024/1024/1024)     AS "MAX_SIZE(G)"  ,INCREMENT_BY   AS "INCREMENT_BY" ,USER_BYTES/1024/1024/1024     AS "USEFUL_SIZE"  FROM DBA_TEMP_FILES where TABLESPACE_NAME='TBS_16'  ;

TABLESPACE_NAME                FILE_NAME                                                        BLOCKS STATUS  AUT FILE_SIZE(G) MAX_SIZE(G) INCREMENT_BY USEFUL_SIZE
------------------------------ ------------------------------------------------------------ ---------- ------- --- ------------ ----------- ------------ -----------
TBS_16                         /u01/app/oracle/oradata/orcl/tbs_16_01.dbf                         1280 ONLINE  YES   .009765625  31.9999847         1280  .008789063
TBS_16                         /u01/app/oracle/oradata/orcl/tbs_16_02.dbf                         1280 ONLINE  YES   .009765625  31.9999847         1280  .008789063

SYS@orcl> alter database tempfile '/u01/app/oracle/oradata/orcl/tbs_16_02.dbf' resize 20m;

Database altered.

SYS@orcl>  SELECT TABLESPACE_NAME  AS TABLESPACE_NAME  ,FILE_NAME      AS FILE_NAME ,BLOCKS AS BLOCKS  ,STATUS AS STATUS ,AUTOEXTENSIBLE AS AUTOEXTENSIBLE  ,BYTES/1024/1024/1024  AS "FILE_SIZE(G)"  ,DECODE(MAXBYTES, 0, BYTES/1024/1024/1024,  MAXBYTES/1024/1024/1024)     AS "MAX_SIZE(G)"  ,INCREMENT_BY   AS "INCREMENT_BY" ,USER_BYTES/1024/1024/1024     AS "USEFUL_SIZE"  FROM DBA_TEMP_FILES where TABLESPACE_NAME='TBS_16'  ;

TABLESPACE_NAME                FILE_NAME                                                        BLOCKS STATUS  AUT FILE_SIZE(G) MAX_SIZE(G) INCREMENT_BY USEFUL_SIZE
------------------------------ ------------------------------------------------------------ ---------- ------- --- ------------ ----------- ------------ -----------
TBS_16                         /u01/app/oracle/oradata/orcl/tbs_16_01.dbf                         1280 ONLINE  YES   .009765625  31.9999847         1280  .008789063
TBS_16                         /u01/app/oracle/oradata/orcl/tbs_16_02.dbf                         2560 ONLINE  YES    .01953125  31.9999847         1280  .018554688

SYS@orcl>


                                   文件脱机联机

SYS@orcl>  SELECT TABLESPACE_NAME  AS TABLESPACE_NAME  ,FILE_NAME      AS FILE_NAME ,BLOCKS AS BLOCKS  ,STATUS AS STATUS ,AUTOEXTENSIBLE AS AUTOEXTENSIBLE  ,BYTES/1024/1024/1024  AS "FILE_SIZE(G)"  ,DECODE(MAXBYTES, 0, BYTES/1024/1024/1024,  MAXBYTES/1024/1024/1024)     AS "MAX_SIZE(G)"  ,INCREMENT_BY   AS "INCREMENT_BY" ,USER_BYTES/1024/1024/1024     AS "USEFUL_SIZE"  FROM DBA_TEMP_FILES where TABLESPACE_NAME='TBS_16'  ;

TABLESPACE_NAME                FILE_NAME                                                        BLOCKS STATUS  AUT FILE_SIZE(G) MAX_SIZE(G) INCREMENT_BY USEFUL_SIZE
------------------------------ ------------------------------------------------------------ ---------- ------- --- ------------ ----------- ------------ -----------
TBS_16                         /u01/app/oracle/oradata/orcl/tbs_16_01.dbf                         1280 ONLINE  YES   .009765625  31.9999847         1280  .008789063
TBS_16                         /u01/app/oracle/oradata/orcl/tbs_16_02.dbf                         2560 ONLINE  YES    .01953125  31.9999847         1280  .018554688



SYS@orcl> alter database tempfile '/u01/app/oracle/oradata/orcl/tbs_16_01.dbf' offline;

Database altered.

SYS@orcl> alter database tempfile '/u01/app/oracle/oradata/orcl/tbs_16_02.dbf' offline;

Database altered.

SYS@orcl>  SELECT TABLESPACE_NAME  AS TABLESPACE_NAME  ,FILE_NAME      AS FILE_NAME ,BLOCKS AS BLOCKS  ,STATUS AS STATUS ,AUTOEXTENSIBLE AS AUTOEXTENSIBLE  ,BYTES/1024/1024/1024  AS "FILE_SIZE(G)"  ,DECODE(MAXBYTES, 0, BYTES/1024/1024/1024,  MAXBYTES/1024/1024/1024)     AS "MAX_SIZE(G)"  ,INCREMENT_BY   AS "INCREMENT_BY" ,USER_BYTES/1024/1024/1024     AS "USEFUL_SIZE"  FROM DBA_TEMP_FILES where TABLESPACE_NAME='TBS_16'  ;

TABLESPACE_NAME                FILE_NAME                                                        BLOCKS STATUS  AUT FILE_SIZE(G) MAX_SIZE(G) INCREMENT_BY USEFUL_SIZE
------------------------------ ------------------------------------------------------------ ---------- ------- --- ------------ ----------- ------------ -----------
TBS_16                         /u01/app/oracle/oradata/orcl/tbs_16_01.dbf                              OFFLINE
TBS_16                         /u01/app/oracle/oradata/orcl/tbs_16_02.dbf                              OFFLINE

SYS@orcl>

默认临时表空间并不能脱机,否则会报错,如下所示

SQL> ALTER TABLESPACE TEMP OFFLINE;

ALTER TABLESPACE TEMP OFFLINE

*

ERROR at line 1:

ORA-03217: invalid option for alter of TEMPORARY TABLESPACE



默认的临时表空间组是可以使其任意一个表空间的数据文件进行脱机操作。


SYS@orcl> select PROPERTY_NAME, PROPERTY_VALUE FROM DATABASE_PROPERTIES   WHERE PROPERTY_NAME='DEFAULT_TEMP_TABLESPACE';

PROPERTY_NAME                  PROPERTY_VALUE
------------------------------ --------------------------------------------------
DEFAULT_TEMP_TABLESPACE        TBS_TEMP_GROUP_1

SYS@orcl>  SELECT TABLESPACE_NAME  AS TABLESPACE_NAME  ,FILE_NAME      AS FILE_NAME ,BLOCKS AS BLOCKS  ,STATUS AS STATUS ,AUTOEXTENSIBLE AS AUTOEXTENSIBLE  ,BYTES/1024/1024/1024  AS "FILE_SIZE(G)"  ,DECODE(MAXBYTES, 0, BYTES/1024/1024/1024,  MAXBYTES/1024/1024/1024)     AS "MAX_SIZE(G)"  ,INCREMENT_BY   AS "INCREMENT_BY" ,USER_BYTES/1024/1024/1024     AS "USEFUL_SIZE"  FROM DBA_TEMP_FILES where TABLESPACE_NAME='TBS_TEMP_GROUP_1'  ;

no rows selected

SYS@orcl>  select * from dba_tablespace_groups;

SYS@orcl>  select * from dba_tablespace_groups;

GROUP_NAME                     TABLESPACE_NAME
------------------------------ ------------------------------
GROUP1                         TEMP
GROUP1                         TEMP_1
GROUP1                         TP1
GROUP1                         TP2
TBS_TEMP_GROUP_1               TBS_19_GROUP
TBS_TEMP_GROUP_1               TBS_20_GROUP

6 rows selected.

SYS@orcl>  SELECT TABLESPACE_NAME  AS TABLESPACE_NAME  ,FILE_NAME      AS FILE_NAME ,BLOCKS AS BLOCKS  ,STATUS AS STATUS ,AUTOEXTENSIBLE AS AUTOEXTENSIBLE  ,BYTES/1024/1024/1024  AS "FILE_SIZE(G)"  ,DECODE(MAXBYTES, 0, BYTES/1024/1024/1024,  MAXBYTES/1024/1024/1024)     AS "MAX_SIZE(G)"  ,INCREMENT_BY   AS "INCREMENT_BY" ,USER_BYTES/1024/1024/1024     AS "USEFUL_SIZE"  FROM DBA_TEMP_FILES where TABLESPACE_NAME='TBS_19_GROUP'  ;

TABLESPACE_NAME                FILE_NAME                                                        BLOCKS STATUS  AUT FILE_SIZE(G) MAX_SIZE(G) INCREMENT_BY USEFUL_SIZE
------------------------------ ------------------------------------------------------------ ---------- ------- --- ------------ ----------- ------------ -----------
TBS_19_GROUP                   /u01/app/oracle/oradata/orcl/tbs_19_group_temp.dbf                 1280 ONLINE  NO    .009765625  .009765625            0  .008789063

SYS@orcl> alter database tempfile '/u01/app/oracle/oradata/orcl/tbs_19_group_temp.dbf' offline;

Database altered.

SYS@orcl>  select * from dba_tablespace_groups;

GROUP_NAME                     TABLESPACE_NAME
------------------------------ ------------------------------
GROUP1                         TEMP
GROUP1                         TEMP_1
GROUP1                         TP1
GROUP1                         TP2
TBS_TEMP_GROUP_1               TBS_19_GROUP
TBS_TEMP_GROUP_1               TBS_20_GROUP

6 rows selected.

SYS@orcl>



                                   设置文件自动扩展

----
SYS@orcl>  SELECT TABLESPACE_NAME  AS TABLESPACE_NAME  ,FILE_NAME      AS FILE_NAME ,BLOCKS AS BLOCKS  ,STATUS AS STATUS ,AUTOEXTENSIBLE AS AUTOEXTENSIBLE  ,BYTES/1024/1024/1024  AS "FILE_SIZE(G)"  ,DECODE(MAXBYTES, 0, BYTES/1024/1024/1024,  MAXBYTES/1024/1024/1024)     AS "MAX_SIZE(G)"  ,INCREMENT_BY   AS "INCREMENT_BY" ,USER_BYTES/1024/1024/1024     AS "USEFUL_SIZE"  FROM DBA_TEMP_FILES where TABLESPACE_NAME='TBS_16'  ;

TABLESPACE_NAME                FILE_NAME                                                        BLOCKS STATUS  AUT FILE_SIZE(G) MAX_SIZE(G) INCREMENT_BY USEFUL_SIZE
------------------------------ ------------------------------------------------------------ ---------- ------- --- ------------ ----------- ------------ -----------
TBS_16                         /u01/app/oracle/oradata/orcl/tbs_16_01.dbf                              OFFLINE
TBS_16                         /u01/app/oracle/oradata/orcl/tbs_16_02.dbf                              OFFLINE

SYS@orcl> alter database tempfile '/u01/app/oracle/oradata/orcl/tbs_16_02.dbf' autoextend on next 10m maxsize unlimited;
alter database tempfile '/u01/app/oracle/oradata/orcl/tbs_16_02.dbf' autoextend on next 10m maxsize unlimited
*
ERROR at line 1:
ORA-00376: file 214 cannot be read at this time
ORA-01110: data file 214: '/u01/app/oracle/oradata/orcl/tbs_16_02.dbf'



SYS@orcl> alter database tempfile '/u01/app/oracle/oradata/orcl/tbs_16_02.dbf' online;

Database altered.

SYS@orcl> alter database tempfile '/u01/app/oracle/oradata/orcl/tbs_16_01.dbf' online;

Database altered.

SYS@orcl> alter database tempfile '/u01/app/oracle/oradata/orcl/tbs_16_01.dbf' autoextend on next 10m maxsize unlimited;

Database altered.

SYS@orcl> alter database tempfile '/u01/app/oracle/oradata/orcl/tbs_16_02.dbf' autoextend on next 10m maxsize unlimited;

Database altered.

SYS@orcl>  SELECT TABLESPACE_NAME  AS TABLESPACE_NAME  ,FILE_NAME      AS FILE_NAME ,BLOCKS AS BLOCKS  ,STATUS AS STATUS ,AUTOEXTENSIBLE AS AUTOEXTENSIBLE  ,BYTES/1024/1024/1024  AS "FILE_SIZE(G)"  ,DECODE(MAXBYTES, 0, BYTES/1024/1024/1024,  MAXBYTES/1024/1024/1024)     AS "MAX_SIZE(G)"  ,INCREMENT_BY   AS "INCREMENT_BY" ,USER_BYTES/1024/1024/1024     AS "USEFUL_SIZE"  FROM DBA_TEMP_FILES where TABLESPACE_NAME='TBS_16'  ;

TABLESPACE_NAME                FILE_NAME                                                        BLOCKS STATUS  AUT FILE_SIZE(G) MAX_SIZE(G) INCREMENT_BY USEFUL_SIZE
------------------------------ ------------------------------------------------------------ ---------- ------- --- ------------ ----------- ------------ -----------
TBS_16                         /u01/app/oracle/oradata/orcl/tbs_16_01.dbf                         1280 ONLINE  YES   .009765625  31.9999847         1280  .008789063
TBS_16                         /u01/app/oracle/oradata/orcl/tbs_16_02.dbf                         2560 ONLINE  YES    .01953125  31.9999847         1280  .018554688

SYS@orcl>

从上述操作可以看出:当数据文件处于脱机状态时 时是不能对该数据文件进行相应的操作。

即:修改数据文件为自动扩展是需要数据文件处于在线状态的


                                   移动重命名文件

----查看临时表空间及文件信息
SYS@orcl>  SELECT TABLESPACE_NAME  AS TABLESPACE_NAME  ,FILE_NAME      AS FILE_NAME ,BLOCKS AS BLOCKS  ,STATUS AS STATUS ,AUTOEXTENSIBLE AS AUTOEXTENSIBLE  ,BYTES/1024/1024/1024  AS "FILE_SIZE(G)"  ,DECODE(MAXBYTES, 0, BYTES/1024/1024/1024,  MAXBYTES/1024/1024/1024)     AS "MAX_SIZE(G)"  ,INCREMENT_BY   AS "INCREMENT_BY" ,USER_BYTES/1024/1024/1024     AS "USEFUL_SIZE"  FROM DBA_TEMP_FILES where TABLESPACE_NAME='TBS_16'  ;

TABLESPACE_NAME                FILE_NAME                                                        BLOCKS STATUS  AUT FILE_SIZE(G) MAX_SIZE(G) INCREMENT_BY USEFUL_SIZE
------------------------------ ------------------------------------------------------------ ---------- ------- --- ------------ ----------- ------------ -----------
TBS_16                         /u01/app/oracle/oradata/orcl/tbs_16_01.dbf                         1280 ONLINE  YES   .009765625  31.9999847         1280  .008789063
TBS_16                         /u01/app/oracle/oradata/orcl/tbs_16_02.dbf                         2560 ONLINE  YES    .01953125  31.9999847         1280  .018554688
---将表空间 文件2 的数据文件脱机
SYS@orcl> alter database tempfile '/u01/app/oracle/oradata/orcl/tbs_16_02.dbf' offline;

Database altered.
---查看文件路径信息
SYS@orcl> ho ls /home/oracle
database  Desktop  grid  h:1dept.sql  h:1emp.txt  h:1.lst  h:1spooltest.txt  h:emp.txt  oracle_system_files_back  oyt.lst  rlwrap-0.37  rlwrap-0.37.tar.gz

SYS@orcl> ho ls /home/oracle/oracle_system_files_back
archivelog  controlfile_bak  datafiles_bak  install_zip  logfile_bak  redo_bak
---最终文件存放位置 (这步骤可以省略)
SYS@orcl> ho ls /home/oracle/oracle_system_files_back/datafiles_bak
datafiles_bak_20180227  datafiles_bak_20180311
---移动或者重名命 相关的临时文件
SYS@orcl> ho mv  /u01/app/oracle/oradata/orcl/tbs_16_02.dbf   /home/oracle/oracle_system_files_back/datafiles_bak/tbs_16_02.dbf
----使用脚本alter  database rename file 
SYS@orcl> ho ls /home/oracle/oracle_system_files_back/datafiles_bak
datafiles_bak_20180227  datafiles_bak_20180311  tbs_16_02.dbf
----将临时表空间的临时文件联机
SYS@orcl> alter database rename file '/u01/app/oracle/oradata/orcl/tbs_16_02.dbf' to '/home/oracle/oracle_system_files_back/datafiles_bak/tbs_16_02.dbf';

Database altered.
---查看文件信息
SYS@orcl> alter database tempfile '/home/oracle/oracle_system_files_back/datafiles_bak/tbs_16_02.dbf' online;

Database altered.

SYS@orcl>  SELECT TABLESPACE_NAME  AS TABLESPACE_NAME  ,FILE_NAME      AS FILE_NAME ,BLOCKS AS BLOCKS  ,STATUS AS STATUS ,AUTOEXTENSIBLE AS AUTOEXTENSIBLE  ,BYTES/1024/1024/1024  AS "FILE_SIZE(G)"  ,DECODE(MAXBYTES, 0, BYTES/1024/1024/1024,  MAXBYTES/1024/1024/1024)     AS "MAX_SIZE(G)"  ,INCREMENT_BY   AS "INCREMENT_BY" ,USER_BYTES/1024/1024/1024     AS "USEFUL_SIZE"  FROM DBA_TEMP_FILES where TABLESPACE_NAME='TBS_16'  ;

TABLESPACE_NAME                FILE_NAME                                                        BLOCKS STATUS  AUT FILE_SIZE(G) MAX_SIZE(G) INCREMENT_BY USEFUL_SIZE
------------------------------ ------------------------------------------------------------ ---------- ------- --- ------------ ----------- ------------ -----------
TBS_16                         /u01/app/oracle/oradata/orcl/tbs_16_01.dbf                         1280 ONLINE  YES   .009765625  31.9999847         1280  .008789063
TBS_16                         /home/oracle/oracle_system_files_back/datafiles_bak/tbs_16_0       2560 ONLINE  YES    .01953125  31.9999847         1280  .018554688
                               2.dbf


SYS@orcl>


                                   删除临时表空间

注意:不能删除当前用户的默认表空间,否则会报ORA-12906错误

          或者不能删除默认的临时表空间组

SYS@orcl>  select PROPERTY_NAME, PROPERTY_VALUE FROM DATABASE_PROPERTIES   WHERE PROPERTY_NAME='DEFAULT_TEMP_TABLESPACE';

PROPERTY_NAME                  PROPERTY_VALUE
------------------------------ --------------------------------------------------
DEFAULT_TEMP_TABLESPACE        TBS_TEMP_GROUP_1


SYS@orcl> drop tablespace TBS_TEMP_GROUP_1   INCLUDING CONTENTS AND DATAFILES CASCADE CONSTRAINTS;
drop tablespace TBS_TEMP_GROUP_1   INCLUDING CONTENTS AND DATAFILES CASCADE CONSTRAINTS
*
ERROR at line 1:
ORA-10917: TABLESPACE GROUP cannot be specified

如果需要删除某一个默认的临时表空间,则必须先创建一个临时表空间,然后指定新创建的表空间为默认表空间,然后删除原来的临时表空间

SYS@orcl>  SELECT TABLESPACE_NAME  AS TABLESPACE_NAME  ,FILE_NAME      AS FILE_NAME ,BLOCKS AS BLOCKS  ,STATUS AS STATUS ,AUTOEXTENSIBLE AS AUTOEXTENSIBLE  ,BYTES/1024/1024/1024  AS "FILE_SIZE(G)"  ,DECODE(MAXBYTES, 0, BYTES/1024/1024/1024,  MAXBYTES/1024/1024/1024)     AS "MAX_SIZE(G)"  ,INCREMENT_BY   AS "INCREMENT_BY" ,USER_BYTES/1024/1024/1024     AS "USEFUL_SIZE"  FROM DBA_TEMP_FILES where TABLESPACE_NAME='TBS_16'  ;

TABLESPACE_NAME                FILE_NAME                                                        BLOCKS STATUS  AUT FILE_SIZE(G) MAX_SIZE(G) INCREMENT_BY USEFUL_SIZE
------------------------------ ------------------------------------------------------------ ---------- ------- --- ------------ ----------- ------------ -----------
TBS_16                         /u01/app/oracle/oradata/orcl/tbs_16_01.dbf                         1280 ONLINE  YES   .009765625  31.9999847         1280  .008789063
TBS_16                         /home/oracle/oracle_system_files_back/datafiles_bak/tbs_16_0       2560 ONLINE  YES    .01953125  31.9999847         1280  .018554688
                               2.dbf



SYS@orcl> drop tablespace TBS_16 including contents and datafiles cascade constraints;

Tablespace dropped.

SYS@orcl>  SELECT TABLESPACE_NAME  AS TABLESPACE_NAME  ,FILE_NAME      AS FILE_NAME ,BLOCKS AS BLOCKS  ,STATUS AS STATUS ,AUTOEXTENSIBLE AS AUTOEXTENSIBLE  ,BYTES/1024/1024/1024  AS "FILE_SIZE(G)"  ,DECODE(MAXBYTES, 0, BYTES/1024/1024/1024,  MAXBYTES/1024/1024/1024)     AS "MAX_SIZE(G)"  ,INCREMENT_BY   AS "INCREMENT_BY" ,USER_BYTES/1024/1024/1024     AS "USEFUL_SIZE"  FROM DBA_TEMP_FILES where TABLESPACE_NAME='TBS_16'  ;

no rows selected

SYS@orcl>




                        切换临时表空间



                                   1:查看临时表空间

SELECT * FROM V$TEMPFILE ;

SELECT USERNAME, TEMPORARY_TABLESPACE FROM DBA_USERS ;


                                   2:创建中转的临时表空间



                                   3:添加相应的数据文件



                                   4:切换临时表空间。

LTER DATABASE DEFAULT TEMPORARY TABLESPACE TMP


                                   5:删除旧的临时表空间数据文件

DROP TABLESPACE TEMP INCLUDING CONTENTS AND DATAFILES;


                                  6:如果有必要,重新指定用户临时表空间为新建的临时表空间

ALTER USER ODS TEMPORARY TABLESPACE TMP;

ALTER USER EDS TEMPORARY TABLESPACE TMP;

ALTER USER ETL TEMPORARY TABLESPACE TMP;

ALTER USER DM TEMPORARY TABLESPACE TMP;



                        收缩临时表空间

排序等操作使用的临时段,使用完成后会被标记为空闲,表示可以重用,占用的空间不会立即释放,有时候临时表空间会变得非常大,此时可以通过收缩临时表空间来释放没有使用的空间。收缩临时表空间是ORACLE 11g新增的功能。

SQL> ALTER TABLESPACE TEMP SHRINK SPACE KEEP 8G;

SQL> ALTER TABLESPACE TEMP SHRINK TEMPFILE '/u01/app/oracle/oradata/GSP/temp02.dbf'



                        监控临时表空间



                                   1:查看临时表空间使用情况:

SYS@orcl> SELECT TU.TABLESPACE_NAME                                    AS "TABLESPACE_NAME",
                 TT.TOTAL - TU.USED                                    AS "FREE(G)",
                 TT.TOTAL                                              AS "TOTAL(G)",
                 ROUND(NVL(TU.USED, 0) / TT.TOTAL * 100, 3)            AS "USED(%)",
                 ROUND(NVL(TT.TOTAL - TU.USED, 0) * 100 / TT.TOTAL, 3) AS "FREE(%)"
          FROM (SELECT TABLESPACE_NAME,
                        SUM(BYTES_USED) / 1024 / 1024 / 1024 USED
                 FROM GV_$TEMP_SPACE_HEADER
                 GROUP BY TABLESPACE_NAME) TU ,
               (SELECT TABLESPACE_NAME,
                        SUM(BYTES) / 1024 / 1024 / 1024 AS TOTAL
                 FROM DBA_TEMP_FILES
                 GROUP BY TABLESPACE_NAME) TT;

TABLESPACE_NAME                   FREE(G)   TOTAL(G)    USED(%)    FREE(%)
------------------------------ ---------- ---------- ---------- ----------
TBS_EXAMPLE                    .047851563 .048828125          2         98
TBS_EXAMPLE                    .096679688  .09765625          1         99
TBS_EXAMPLE                    .047851563 .048828125          2         98
TBS_EXAMPLE                    5.04785156 5.04882813       .019     99.981
TBS_EXAMPLE
TBS_EXAMPLE                    .008789063 .009765625         10         90
TBS_EXAMPLE                    .096679688  .09765625          1         99
TBS_EXAMPLE                    .291992188  .29296875       .333     99.667
TBS_EXAMPLE                    .018554688  .01953125          5         95
TP1                            .043945313 .048828125         10         90
TP1                            .092773438  .09765625          5         95


                                   2:查看临时表空间使用情况:

SYS@orcl> set linesize 300;
SYS@orcl> COL TEMP_FILE FOR A60;
SYS@orcl> SELECT ROUND((F.BYTES_FREE  + F.BYTES_USED)/1024/1024/1024, 2)                         AS "TOTAL(GB)",
  2         ROUND(((F.BYTES_FREE  + F.BYTES_USED) - NVL(P.BYTES_USED, 0))/1024/1024/1024,2) AS "FREE(GB)",
  3         D.FILE_NAME                                                                     AS "TEMP_FILE",
  4         ROUND(NVL(P.BYTES_USED, 0)/1024/1024/1024, 2)                                   AS "USED(GB)" ,
  5         ROUND((F.BYTES_USED + F.BYTES_FREE)/1024/1024/1024, 2)                          AS "TOTAL(GB)",
  6         ROUND(((F.BYTES_USED + F.BYTES_FREE) - NVL(P.BYTES_USED, 0))/1024/1024/1024, 2) AS "FREE(GB)" ,
  7         ROUND(NVL(P.BYTES_USED, 0)/1024/1024/1024, 2)                                   AS "USED(GB)"
  8  FROM SYS.V_$TEMP_SPACE_HEADER F ,DBA_TEMP_FILES D ,SYS.V_$TEMP_EXTENT_POOL P
  9  WHERE F.TABLESPACE_NAME(+) = D.TABLESPACE_NAME
 10    AND F.FILE_ID(+) = D.FILE_ID
 11    AND P.FILE_ID(+) = D.FILE_ID;

 TOTAL(GB)   FREE(GB) TEMP_FILE                                                      USED(GB)  TOTAL(GB)   FREE(GB)   USED(GB)
---------- ---------- ------------------------------------------------------------ ---------- ---------- ---------- ----------
       .05        .05 /u01/app/oracle/oradata/orcl/temp.dbf                                 0        .05        .05          0
       .01        .01 /u01/app/oracle/oradata/orcl/tbs_17_01.dbf                            0        .01        .01          0
       .01        .01 /u01/app/oracle/oradata/orcl/tbs_17_02.dbf                            0        .01        .01          0
                      /u01/app/oracle/oradata/orcl/tbs_19_group_temp.dbf                    0                                0
       .01        .01 /u01/app/oracle/oradata/orcl/tbs_20_group_temp.dbf                    0        .01        .01          0
       .05        .05 /u01/app/oracle/oradata/orcl/tbs_example .dbf                         0        .05        .05          0
        .1         .1 /u01/app/oracle/oradata/orcl/tp2.dbf                                  0         .1         .1          0
         3          3 /u01/app/oracle/oradata/orcl/temp_2.dbf                               0          3          3          0
       .05        .05 /u01/app/oracle/oradata/orcl/temp_1.dbf                               0        .05        .05          0
       .29        .29 /u01/app/oracle/oradata/orcl/temp_01.dbf                              0        .29        .29          0
        .1         .1 /u01/app/oracle/oradata/orcl/tp1.dbf                                  0         .1         .1          0

 TOTAL(GB)   FREE(GB) TEMP_FILE                                                      USED(GB)  TOTAL(GB)   FREE(GB)   USED(GB)
---------- ---------- ------------------------------------------------------------ ---------- ---------- ---------- ----------
         2          2 /home/oracle/oracle_system_files_back/datafiles_bak/datafile          0          2          2          0
                      s_bak_20180311/temp_6.dbf


12 rows selected.

SYS@orcl>


                                   3:查看临时表空间对应的临时文件的使用情况:


SYS@orcl> SELECT TABLESPACE_NAME         AS TABLESPACE_NAME    ,
  2      BYTES_USED/1024/1024/1024    AS TABLESAPCE_USED  ,
  3      BYTES_FREE/1024/1024/1024  AS TABLESAPCE_FREE
  4  FROM V$TEMP_SPACE_HEADER
  5  ORDER BY 1 DESC;

TABLESPACE_NAME                TABLESAPCE_USED TABLESAPCE_FREE
------------------------------ --------------- ---------------
TP2                                 .004882813      .092773438
TP1                                 .004882813      .092773438
TEMP_1                              .001953125      2.99804688
TEMP_1                              .001953125      1.99804688
TEMP_1                               .00390625      .044921875
TEMP_01                             .000976563      .291992188
TEMP                                .034179688      .014648438
TBS_EXAMPLE                         .000976563      .047851563
TBS_20_GROUP                        .001953125        .0078125
TBS_17                              .001953125        .0078125
TBS_17                              .000976563      .008789063

11 rows selected.

SYS@orcl>


                                   4:查找消耗临时表空间资源比较多的SQL语句

SYS@orcl> col USERNAME for a20;
SYS@orcl> col SID for a10;

SYS@orcl> col EXTENTS for a20;
SYS@orcl> col TABLESPACE for a20;
SYS@orcl> col SQL_TEXT for a90;
SYS@orcl>  col EXTENTS for a40;
SYS@orcl> SELECT   se.username,
                    se.sid,
                    su.extents,
                    su.blocks * to_number(rtrim(p.value)) as Space,
                    tablespace,
                    segtype,
                    sql_text
           FROM v$sort_usage su, v$parameter p, v$session se, v$sql s
              WHERE p.name = 'db_block_size'
                AND su.session_addr = se.saddr
                AND s.hash_value = su.sqlhash
                AND s.address = su.sqladdr
           ORDER BY se.username, se.sid;

USERNAME                    SID    EXTENTS      SPACE TABLESPACE           SEGTYPE   SQL_TEXT
-------------------- ---------- ---------- ---------- -------------------- --------- ------------------------------------------------------------------------------------------
SYS                         191           1    1048576 TEMP                 DATA      select  * from dba_tablespace_groups

SYS@orcl>









           19:Oracle 加密表空间



                 1:加密表空间与 wallet关系

image


                 2: TDE(Transparent Data Encryption  透明数据加密 ) 使用场景

image

image

image


                 3: TDE(Transparent Data Encryption  透明数据加密 ) 加密原理

1:配置 TDE环境:

image

image

image


----创建一个新目录:
SYS@orcl> ho mkdir  /u01/app/oracle/admin/orcl/wallet
----修改配置文件 $vi sqlnet.ora
SYS@orcl> ho vi  $ORACLE_HOME/network/admin/sqlnet.ora

ENCRYPTION_WALLET_LOCATION=(SOURCE=(METHOD=FILE)(METHOD_DATA=(DIRECTORY=$ORACLE_BASE/admin/$ORACLE_SID/wallet/)))
~
"/u01/app/oracle/product/11.2.0/db_1/network/admin/sqlnet.ora" 1L, 114C written
---查看配置文件信息
SYS@orcl> ho cat  $ORACLE_HOME/network/admin/sqlnet.ora
ENCRYPTION_WALLET_LOCATION=(SOURCE=(METHOD=FILE)(METHOD_DATA=(DIRECTORY=$ORACLE_BASE/admin/$ORACLE_SID/wallet/)))
---使用sys 用户登录,创建 master key 文件,指定 wallet 密码创建后自动打开wallet 。
SYS@orcl> alter system set encryption key authenticated by "abc";
alter system set encryption key authenticated by "abc"
*
ERROR at line 1:
ORA-28353: failed to open wallet
-----从上操作得到报错信息来看:是被告知 钱包 wallet 并没有打开。需要重新启动数据库。才可以生效。
-----以下操作是:关闭数据库,然后在启动数据库
SYS@orcl> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
SYS@orcl> startup
ORACLE instance started.

Total System Global Area  523108352 bytes
Fixed Size                  1346052 bytes
Variable Size             381683196 bytes
Database Buffers          134217728 bytes
Redo Buffers                5861376 bytes
Database mounted.
Database opened.
----创建 wallet 密码
SYS@orcl> alter system set encryption key authenticated by "abc";

System altered.
----查看生成的密码文件 
 SYS@orcl> ho ls /u01/app/oracle/admin/orcl/wallet
ewallet.p12

SYS@orcl>





image


SYS@orcl> set linesize 200;
SYS@orcl>  col name for a30;
SYS@orcl>  col datafile_name for a90;
SYS@orcl>  select distinct t1.name,t2.name datafile_name  ,t.autoextensible from v$tablespace t1,v$datafile t2    ,dba_data_files t where t1.name=t.tablespace_name   and t1.ts# = t2.ts#    order by t1.name asc;

NAME                           DATAFILE_NAME                                                                              AUT
------------------------------ ------------------------------------------------------------------------------------------ ---
COMPRESS_01                    /u01/app/oracle/oradata/orcl/compress_01.dbf                                               NO
COMPRESS_02                    /u01/app/oracle/oradata/orcl/compress_02.dbf                                               NO
EXAMPLE                        /u01/app/oracle/oradata/orcl/example01.dbf                                                 YES
SYSAUX                         /u01/app/oracle/oradata/orcl/sysaux01.dbf                                                  YES
SYSTEM                         /u01/app/oracle/oradata/orcl/system01.dbf                                                  YES
TBSP_1                         /u01/app/oracle/oradata/orcl/tbsp_1.dbf                                                    YES
TBS_01                         /u01/app/oracle/oradata/orcl/tbs_01.dbf                                                    NO
TBS_02                         /u01/app/oracle/oradata/orcl/tbs_02_01.dbf                                                 NO
TBS_02                         /u01/app/oracle/oradata/orcl/tbs_02_02.dbf                                                 NO
TBS_03                         /u01/app/oracle/oradata/orcl/tbs_03.dbf                                                    YES
TBS_04                         /u01/app/oracle/oradata/orcl/tbs_04.dbf                                                    YES

NAME                           DATAFILE_NAME                                                                              AUT
------------------------------ ------------------------------------------------------------------------------------------ ---
TBS_05                         /u01/app/oracle/oradata/orcl/tbs_05.dbf                                                    YES
TBS_06                         /u01/app/oracle/oradata/orcl/tbs_06.dbf                                                    NO
TBS_07                         /u01/app/oracle/oradata/orcl/tbs_07.dbf                                                    NO
TBS_08                         /u01/app/oracle/oradata/orcl/tbs_08.dbf                                                    NO
TBS_09                         /u01/app/oracle/oradata/orcl/tbs_09.dbf                                                    NO
TBS_10                         /u01/app/oracle/oradata/orcl/tbs_10.dbf                                                    NO
TBS_11                         /u01/app/oracle/oradata/orcl/tbs_11.dbf                                                    NO
TBS_12                         /u01/app/oracle/oradata/orcl/tbs_12_01.dbf                                                 YES
TBS_13                         /u01/app/oracle/oradata/orcl/tbs_13.dbf                                                    NO
TBS_14                         /u01/app/oracle/oradata/orcl/tbs_14.dbf                                                    NO
TBS_15                         /u01/app/oracle/oradata/orcl/tbs_15.dbf                                                    NO

NAME                           DATAFILE_NAME                                                                              AUT
------------------------------ ------------------------------------------------------------------------------------------ ---
TBS_BIG_1                      /u01/app/oracle/oradata/orcl/datafilebig_1.dfb                                             NO
TBS_TEST1                      /u01/app/oracle/oradata/orcl/datafile1.dbf                                                 NO
TBS_TEST4                      /u01/app/oracle/oradata/orcl/datafile4.dbf                                                 NO
TBS_TEST5                      /u01/app/oracle/oradata/orcl/datafile5.dbf                                                 YES
TBS_TEST_3                     /u01/app/oracle/oradata/orcl/datafile3.dbf                                                 YES
TEST                           /u01/app/oracle/oradata/orcl/test_01.dbf                                                   NO
TEST2                          /u01/app/oracle/oradata/orcl/test02.dbf                                                    YES
TS_1                           /u01/app/oracle/oradata/orcl/ts1.dbf                                                       NO
TS_2                           /u01/app/oracle/oradata/orcl/ts2.dbf                                                       NO
UNDOTBS1                       /u01/app/oracle/oradata/orcl/undotbs01.dbf                                                 YES
USERS                          /u01/app/oracle/oradata/orcl/users01.dbf                                                   YES

33 rows selected.

 

SYS@orcl> create tablespace tbs_16_wallet  datafile '/u01/app/oracle/oradata/orcl/tbs_16_wallet.dbf' size 10m encryption default storage(encrypt);

Tablespace created.

 

SYS@orcl> create tablespace tbs_17_wallet datafile '/u01/app/oracle/oradata/orcl/tbs_17_wallet.dbf'size 10m encryption using 'AES256' default storage(encrypt);

Tablespace created.

SYS@orcl>  select distinct t1.name,t2.name datafile_name  ,t.autoextensible from v$tablespace t1,v$datafile t2    ,dba_data_files t where t1.name=t.tablespace_name   and t1.ts# = t2.ts#    order by t1.name asc;

NAME                           DATAFILE_NAME                                                                              AUT
------------------------------ ------------------------------------------------------------------------------------------ ---
COMPRESS_01                    /u01/app/oracle/oradata/orcl/compress_01.dbf                                               NO
COMPRESS_02                    /u01/app/oracle/oradata/orcl/compress_02.dbf                                               NO
EXAMPLE                        /u01/app/oracle/oradata/orcl/example01.dbf                                                 YES
SYSAUX                         /u01/app/oracle/oradata/orcl/sysaux01.dbf                                                  YES
SYSTEM                         /u01/app/oracle/oradata/orcl/system01.dbf                                                  YES
TBSP_1                         /u01/app/oracle/oradata/orcl/tbsp_1.dbf                                                    YES
TBS_01                         /u01/app/oracle/oradata/orcl/tbs_01.dbf                                                    NO
TBS_02                         /u01/app/oracle/oradata/orcl/tbs_02_01.dbf                                                 NO
TBS_02                         /u01/app/oracle/oradata/orcl/tbs_02_02.dbf                                                 NO
TBS_03                         /u01/app/oracle/oradata/orcl/tbs_03.dbf                                                    YES
TBS_04                         /u01/app/oracle/oradata/orcl/tbs_04.dbf                                                    YES

NAME                           DATAFILE_NAME                                                                              AUT
------------------------------ ------------------------------------------------------------------------------------------ ---
TBS_05                         /u01/app/oracle/oradata/orcl/tbs_05.dbf                                                    YES
TBS_06                         /u01/app/oracle/oradata/orcl/tbs_06.dbf                                                    NO
TBS_07                         /u01/app/oracle/oradata/orcl/tbs_07.dbf                                                    NO
TBS_08                         /u01/app/oracle/oradata/orcl/tbs_08.dbf                                                    NO
TBS_09                         /u01/app/oracle/oradata/orcl/tbs_09.dbf                                                    NO
TBS_10                         /u01/app/oracle/oradata/orcl/tbs_10.dbf                                                    NO
TBS_11                         /u01/app/oracle/oradata/orcl/tbs_11.dbf                                                    NO
TBS_12                         /u01/app/oracle/oradata/orcl/tbs_12_01.dbf                                                 YES
TBS_13                         /u01/app/oracle/oradata/orcl/tbs_13.dbf                                                    NO
TBS_14                         /u01/app/oracle/oradata/orcl/tbs_14.dbf                                                    NO
TBS_15                         /u01/app/oracle/oradata/orcl/tbs_15.dbf                                                    NO

NAME                           DATAFILE_NAME                                                                              AUT
------------------------------ ------------------------------------------------------------------------------------------ ---
TBS_16_WALLET                  /u01/app/oracle/oradata/orcl/tbs_16_wallet.dbf                                             NO
TBS_17_WALLET                  /u01/app/oracle/oradata/orcl/tbs_17_wallet.dbf                                             NO
TBS_BIG_1                      /u01/app/oracle/oradata/orcl/datafilebig_1.dfb                                             NO
TBS_TEST1                      /u01/app/oracle/oradata/orcl/datafile1.dbf                                                 NO
TBS_TEST4                      /u01/app/oracle/oradata/orcl/datafile4.dbf                                                 NO
TBS_TEST5                      /u01/app/oracle/oradata/orcl/datafile5.dbf                                                 YES
TBS_TEST_3                     /u01/app/oracle/oradata/orcl/datafile3.dbf                                                 YES
TEST                           /u01/app/oracle/oradata/orcl/test_01.dbf                                                   NO
TEST2                          /u01/app/oracle/oradata/orcl/test02.dbf                                                    YES
TS_1                           /u01/app/oracle/oradata/orcl/ts1.dbf                                                       NO
TS_2                           /u01/app/oracle/oradata/orcl/ts2.dbf                                                       NO

NAME                           DATAFILE_NAME                                                                              AUT
------------------------------ ------------------------------------------------------------------------------------------ ---
UNDOTBS1                       /u01/app/oracle/oradata/orcl/undotbs01.dbf                                                 YES
USERS                          /u01/app/oracle/oradata/orcl/users01.dbf                                                   YES

35 rows selected.

SYS@orcl> 


image


----打开钱包 
SYS@orcl> alter system set wallet open identified by "abc";
alter system set wallet open identified by "abc"
*
----此时报错的原因: 是 我的钱包已经打开了
ERROR at line 1:
ORA-28354: Encryption wallet, auto login wallet, or HSM is already open

---关闭钱包
SYS@orcl> alter system set wallet close identified by "abc";

System altered.
--打开钱包
SYS@orcl> alter system set wallet open identified by "abc";

System altered.
----查看表空间属性
SYS@orcl> select tablespace_name ,encrypted from dba_tablespaces;

TABLESPACE_NAME                ENC
------------------------------ ---
SYSTEM                         NO
SYSAUX                         NO
UNDOTBS1                       NO
TEMP                           NO
USERS                          NO
EXAMPLE                        NO
TBS_TEST1                      NO
TBS_TEST_3                     NO
TBS_TEST4                      NO
TBS_TEST5                      NO
TBS_BIG_1                      NO

TABLESPACE_NAME                ENC
------------------------------ ---
TEMP_1                         NO
TBS_EXAMPLE                    NO
TEMP_01                        NO
TP1                            NO
TP2                            NO
TS_1                           NO
TS_2                           NO
TBSP_1                         NO
COMPRESS_01                    NO
COMPRESS_02                    NO
TEST                           NO

TABLESPACE_NAME                ENC
------------------------------ ---
TEST2                          NO
TBS_01                         NO
TBS_02                         NO
TBS_03                         NO
TBS_04                         NO
TBS_05                         NO
TBS_06                         NO
TBS_07                         NO
TBS_08                         NO
TBS_09                         NO
TBS_10                         NO

TABLESPACE_NAME                ENC
------------------------------ ---
TBS_11                         NO
TBS_12                         NO
TBS_13                         NO
TBS_14                         NO
TBS_15                         NO
TBS_16                         NO
TBS_17                         NO
TBS_16_WALLET                  YES
TBS_17_WALLET                  YES

42 rows selected.

SYS@orcl>  



                 4:实验

image

image

image



SYS@orcl> create table encrypted_t (x int ) tablespace TBS_16_WALLET ;                  

Table created.

SYS@orcl> insert into encrypted_t values(100);

1 row created.

SYS@orcl> commit;

Commit complete.

SYS@orcl> select * from encrypted_t ;

SYS@orcl> alter system set wallet close identified by "abc";

System altered.

SYS@orcl> select * from encrypted_t ;
select * from encrypted_t
              *
ERROR at line 1:
ORA-28365: wallet is not open


SYS@orcl> alter system set wallet open identified by "abc";

System altered.

SYS@orcl> select * from encrypted_t ;

         X
----------
       100

SYS@orcl> alter system set wallet close identified by "abc";

System altered.

SYS@orcl> create table encrypted_t_1 (x int ) tablespace TBS_16_WALLET ;                  
create table encrypted_t_1 (x int ) tablespace TBS_16_WALLET
*
ERROR at line 1:
ORA-28365: wallet is not open


SYS@orcl> alter system set wallet open identified by "abc";

System altered.

SYS@orcl> create table encrypted_t_1 (x int ) tablespace TBS_16_WALLET ;                  

Table created.

SYS@orcl> alter system set wallet close identified by "abc";

System altered.

SYS@orcl> drop table encrypted_t_1 ;

Table dropped.
SYS@orcl> drop tablespace TBS_16_WALLET including contents and datafiles;

Tablespace dropped.

 

SYS@orcl> create table tt (x int) tablespace tbs_13 ;

Table created.

SYS@orcl> alter table tt move tablespace TBS_17_WALLET ;
alter table tt move tablespace TBS_17_WALLET
            *
ERROR at line 1:
ORA-28365: wallet is not open


SYS@orcl> alter system set wallet open identified by "abc";

System altered.

SYS@orcl> alter table tt move tablespace TBS_17_WALLET ;

Table altered.






           20:临时表空间组

临进表空间组:

临进表空间组是ORACLE 10g引入的一个新特性,它是一个逻辑概念,不需要显示的创建和删除。只要把一个临时表空间分配到一个组中,临时表空间组就自动创建,所有的临时表空间从临时表空间组中移除就自动删除。

一个临时表空间组必须由至少一个临时表空间组成,并且无明确的最大数量限制.

A temporary tablespace group contains at least one tablespace. There is no limit for a group to have a maximum number of tablespaces

如果删除一个临时表空间组的所有成员,该组也自动被删除。

临时表空间的名字不能与临时表空间组的名字相同。

It shares the namespace of tablespaces, thus its name cannot be the same as that of any tablespace.

可以在创建临时表空间是指定表空间组,即隐式创建。



                 1:隐式创建表空间组


----可以在创建临时表空间是指定表空间组,即隐式创建。
SYS@orcl> create temporary tablespace tbs_19_group  tempfile '/u01/app/oracle/oradata/orcl/tbs_19_group_temp.dbf' size 10m tablespace group tbs_temp_group_1;

Tablespace created.
---查看临时表空间组
SYS@orcl> select * from dba_tablespace_groups;

GROUP_NAME                     TABLESPACE_NAME
------------------------------ ------------------------------
GROUP1                         TEMP
GROUP1                         TEMP_1
GROUP1                         TP1
GROUP1                         TP2
TBS_TEMP_GROUP_1               TBS_19_GROUP
----设置为默认的表空间
SYS@orcl> alter database default temporary tablespace tbs_temp_group_1;

Database altered.

----可以在创建临时表空间是指定表空间组,即隐式创建。
SYS@orcl> create temporary tablespace tbs_20_group  tempfile '/u01/app/oracle/oradata/orcl/tbs_20_group_temp.dbf' size 10m tablespace group tbs_temp_group_1;

Tablespace created.

SYS@orcl> select  * from dba_tablespace_groups;

GROUP_NAME                     TABLESPACE_NAME
------------------------------ ------------------------------
GROUP1                         TEMP
GROUP1                         TEMP_1
GROUP1                         TP1
GROUP1                         TP2
TBS_TEMP_GROUP_1               TBS_19_GROUP
TBS_TEMP_GROUP_1               TBS_20_GROUP

6 rows selected.


                 2:向已经存在的表空间组增加已经创建好的临时表空间


----查看临时表空间数据信息
SYS@orcl>  SELECT TABLESPACE_NAME  AS TABLESPACE_NAME  ,FILE_NAME      AS FILE_NAME ,BLOCKS AS BLOCKS  ,STATUS AS STATUS ,AUTOEXTENSIBLE AS AUTOEXTENSIBLE  ,BYTES/1024/1024/1024  AS "FILE_SIZE(G)"  ,DECODE(MAXBYTES, 0, BYTES/1024/1024/1024,  MAXBYTES/1024/1024/1024)     AS "MAX_SIZE(G)"  ,INCREMENT_BY   AS "INCREMENT_BY" ,USER_BYTES/1024/1024/1024     AS "USEFUL_SIZE"  FROM DBA_TEMP_FILES where TABLESPACE_NAME='TBS_17'  ;

TABLESPACE_NAME                FILE_NAME                                                        BLOCKS STATUS  AUT FILE_SIZE(G) MAX_SIZE(G) INCREMENT_BY USEFUL_SIZE
------------------------------ ------------------------------------------------------------ ---------- ------- --- ------------ ----------- ------------ -----------
TBS_17                         /u01/app/oracle/oradata/orcl/tbs_17_01.dbf                         1280 ONLINE  NO    .009765625  .009765625            0  .008789063
TBS_17                         /u01/app/oracle/oradata/orcl/tbs_17_02.dbf                         1280 ONLINE  YES   .009765625  31.9999847         1280  .008789063

SYS@orcl> select  * from dba_tablespace_groups;

GROUP_NAME                     TABLESPACE_NAME
------------------------------ ------------------------------
GROUP1                         TEMP
GROUP1                         TEMP_1
GROUP1                         TP1
GROUP1                         TP2
TBS_TEMP_GROUP_1               TBS_19_GROUP
TBS_TEMP_GROUP_1               TBS_20_GROUP

6 rows selected.
----也可以指定已经创建好的临时表空间的临时表空间组。
SYS@orcl> alter tablespace  tbs_17 tablespace group TBS_TEMP_GROUP_1;

Tablespace altered.
----查看表空间组信息
SYS@orcl> select  * from dba_tablespace_groups;

GROUP_NAME                     TABLESPACE_NAME
------------------------------ ------------------------------
GROUP1                         TEMP
GROUP1                         TEMP_1
GROUP1                         TP1
GROUP1                         TP2
TBS_TEMP_GROUP_1               TBS_17
TBS_TEMP_GROUP_1               TBS_19_GROUP
TBS_TEMP_GROUP_1               TBS_20_GROUP

7 rows selected.

SYS@orcl>


                 3:向已经存在的表空间组移除已经创建好的临时表空间

SYS@orcl> select  * from dba_tablespace_groups;

GROUP_NAME                     TABLESPACE_NAME
------------------------------ ------------------------------
GROUP1                         TEMP
GROUP1                         TEMP_1
GROUP1                         TP1
GROUP1                         TP2
TBS_TEMP_GROUP_1               TBS_17
TBS_TEMP_GROUP_1               TBS_19_GROUP
TBS_TEMP_GROUP_1               TBS_20_GROUP

7 rows selected.
----从表空间组中移除
SYS@orcl> alter  tablespace TBS_17 tablespace group '';

Tablespace altered.

SYS@orcl> select  * from dba_tablespace_groups;

GROUP_NAME                     TABLESPACE_NAME
------------------------------ ------------------------------
GROUP1                         TEMP
GROUP1                         TEMP_1
GROUP1                         TP1
GROUP1                         TP2
TBS_TEMP_GROUP_1               TBS_19_GROUP
TBS_TEMP_GROUP_1               TBS_20_GROUP

6 rows selected.

SYS@orcl>


                 4:当为数据库指定临时表空间或为用户指定临时表空间时,可以使用临时表空间组的名称

SYS@orcl> alter user MR  temporary tablespace TBS_20_GROUP;

User altered.


                 5:删除临时表空间组(删除组成临时表空间组的所有临时表空间)


---删除临时表空间组(删除组成临时表空间组的所有临时表空间)
SQL> alter tablespace tempts1 tablespace group GROUP1;
SQL> drop tablespace tempts1 including contents and datafiles;
SQL> select * from dba_tablespace_groups;
SQL> alter user scott temporary tablespace temp;
SQL> alter database orcl default temporary tablespace temp;
SQL> drop tablespace tempts2 including contents and datafiles;
SQL> select * from dba_tablespace_groups;


                 6:把临时表空间组指定给用户


----把临时表空间组指定给用户
SQL> alter user scott temporary tablespace GROUP2;
SQL> select username,temporary_tablespace from dba_users where username='SCOTT';


                 7:将表空间从一个临时表空间组移动到另外一个临时表空间组


--将表空间从一个临时表空间组移动到另外一个临时表空间组:
SQL> alter tablespace tempts1 tablespace group GROUP2 ;
SQL> select * from dba_tablespace_groups;



                 8:查询临时表空间组

--查询临时表空间组
SQL> select * from dba_tablespace_groups;



           21:查看数据库的特性


SYS@orcl> col PROPERTY_NAME for a30;
SYS@orcl> col PROPERTY_VALUE for a40;
SYS@orcl> col DESCRIPTION for a90;
SYS@orcl> select * from database_properties;

PROPERTY_NAME                  PROPERTY_VALUE                           DESCRIPTION
------------------------------ ---------------------------------------- ------------------------------------------------------------------------------------------
DICT.BASE                      2                                        dictionary base tables version #
DEFAULT_TEMP_TABLESPACE        TBS_TEMP_GROUP_1                         Name of default temporary tablespace
DEFAULT_PERMANENT_TABLESPACE   TBS_TEST1                                Name of default permanent tablespace
DEFAULT_EDITION                ORA$BASE                                 Name of the database default edition
Flashback Timestamp TimeZone   GMT                                      Flashback timestamp created in GMT
TDE_MASTER_KEY_ID
DST_UPGRADE_STATE              NONE                                     State of Day Light Saving Time Upgrade
DST_PRIMARY_TT_VERSION         14                                       Version of primary timezone data file
DST_SECONDARY_TT_VERSION       0                                        Version of secondary timezone data file
DEFAULT_TBS_TYPE               SMALLFILE                                Default tablespace type
NLS_LANGUAGE                   AMERICAN                                 Language

PROPERTY_NAME                  PROPERTY_VALUE                           DESCRIPTION
------------------------------ ---------------------------------------- ------------------------------------------------------------------------------------------
NLS_TERRITORY                  AMERICA                                  Territory
NLS_CURRENCY                   $                                        Local currency
NLS_ISO_CURRENCY               AMERICA                                  ISO currency
NLS_NUMERIC_CHARACTERS         .,                                       Numeric characters
NLS_CHARACTERSET               ZHS16GBK                                 Character set
NLS_CALENDAR                   GREGORIAN                                Calendar system
NLS_DATE_FORMAT                DD-MON-RR                                Date format
NLS_DATE_LANGUAGE              AMERICAN                                 Date language
NLS_SORT                       BINARY                                   Linguistic definition
NLS_TIME_FORMAT                HH.MI.SSXFF AM                           Time format
NLS_TIMESTAMP_FORMAT           DD-MON-RR HH.MI.SSXFF AM                 Time stamp format

PROPERTY_NAME                  PROPERTY_VALUE                           DESCRIPTION
------------------------------ ---------------------------------------- ------------------------------------------------------------------------------------------
NLS_TIME_TZ_FORMAT             HH.MI.SSXFF AM TZR                       Time with timezone format
NLS_TIMESTAMP_TZ_FORMAT        DD-MON-RR HH.MI.SSXFF AM TZR             Timestamp with timezone format
NLS_DUAL_CURRENCY              $                                        Dual currency symbol
NLS_COMP                       BINARY                                   NLS comparison
NLS_LENGTH_SEMANTICS           BYTE                                     NLS length semantics
NLS_NCHAR_CONV_EXCP            FALSE                                    NLS conversion exception
NLS_NCHAR_CHARACTERSET         AL16UTF16                                NCHAR Character set
NLS_RDBMS_VERSION              11.2.0.3.0                               RDBMS version for NLS parameters
GLOBAL_DB_NAME                 ORCL                                     Global database name
EXPORT_VIEWS_VERSION           8                                        Export views revision #
WORKLOAD_CAPTURE_MODE                                                   CAPTURE implies workload capture is in progress

PROPERTY_NAME                  PROPERTY_VALUE                           DESCRIPTION
------------------------------ ---------------------------------------- ------------------------------------------------------------------------------------------
WORKLOAD_REPLAY_MODE                                                    PREPARE implies external replay clients can connect; REPLAY implies workload replay is in
                                                                        progress

NO_USERID_VERIFIER_SALT        6396C58AB17AE007E9A7289C0FE59274
DBTIMEZONE                     00:00                                    DB time zone

36 rows selected.

SYS@orcl>



           22:undo表空间创建



---undo表空间创建
        create undo tablespace 名称 datafile '路径' size 大小;



SYS@orcl> col NAME for a20
SYS@orcl> col DATAFILE_NAME for a60;
SYS@orcl> select distinct t1.name,t2.name datafile_name  ,t.autoextensible from v$tablespace t1,v$datafile t2    ,dba_data_files t where t1.name=t.tablespace_name   and t1.ts# = t2.ts#    order by t1.name asc;

NAME                 DATAFILE_NAME                                                AUT
-------------------- ------------------------------------------------------------ ---
COMPRESS_01          /u01/app/oracle/oradata/orcl/compress_01.dbf                 NO
COMPRESS_02          /u01/app/oracle/oradata/orcl/compress_02.dbf                 NO
EXAMPLE              /u01/app/oracle/oradata/orcl/example01.dbf                   YES
SYSAUX               /u01/app/oracle/oradata/orcl/sysaux01.dbf                    YES
SYSTEM               /u01/app/oracle/oradata/orcl/system01.dbf                    YES
TBSP_1               /u01/app/oracle/oradata/orcl/tbsp_1.dbf                      YES
TBS_01               /u01/app/oracle/oradata/orcl/tbs_01.dbf                      NO
TBS_02               /u01/app/oracle/oradata/orcl/tbs_02_01.dbf                   NO
TBS_02               /u01/app/oracle/oradata/orcl/tbs_02_02.dbf                   NO
TBS_03               /u01/app/oracle/oradata/orcl/tbs_03.dbf                      YES
TBS_04               /u01/app/oracle/oradata/orcl/tbs_04.dbf                      YES

NAME                 DATAFILE_NAME                                                AUT
-------------------- ------------------------------------------------------------ ---
TBS_05               /u01/app/oracle/oradata/orcl/tbs_05.dbf                      YES
TBS_06               /u01/app/oracle/oradata/orcl/tbs_06.dbf                      NO
TBS_07               /u01/app/oracle/oradata/orcl/tbs_07.dbf                      NO
TBS_08               /u01/app/oracle/oradata/orcl/tbs_08.dbf                      NO
TBS_09               /u01/app/oracle/oradata/orcl/tbs_09.dbf                      NO
TBS_10               /u01/app/oracle/oradata/orcl/tbs_10.dbf                      NO
TBS_11               /u01/app/oracle/oradata/orcl/tbs_11.dbf                      NO
TBS_12               /u01/app/oracle/oradata/orcl/tbs_12_01.dbf                   YES
TBS_13               /u01/app/oracle/oradata/orcl/tbs_13.dbf                      NO
TBS_14               /u01/app/oracle/oradata/orcl/tbs_14.dbf                      NO
TBS_15               /u01/app/oracle/oradata/orcl/tbs_15.dbf                      NO

NAME                 DATAFILE_NAME                                                AUT
-------------------- ------------------------------------------------------------ ---
TBS_17_WALLET        /u01/app/oracle/oradata/orcl/tbs_17_wallet.dbf               NO
TBS_BIG_1            /u01/app/oracle/oradata/orcl/datafilebig_1.dfb               NO
TBS_TEST1            /u01/app/oracle/oradata/orcl/datafile1.dbf                   NO
TBS_TEST4            /u01/app/oracle/oradata/orcl/datafile4.dbf                   NO
TBS_TEST5            /u01/app/oracle/oradata/orcl/datafile5.dbf                   YES
TBS_TEST_3           /u01/app/oracle/oradata/orcl/datafile3.dbf                   YES
TEST                 /u01/app/oracle/oradata/orcl/test_01.dbf                     NO
TEST2                /u01/app/oracle/oradata/orcl/test02.dbf                      YES
TS_1                 /u01/app/oracle/oradata/orcl/ts1.dbf                         NO
TS_2                 /u01/app/oracle/oradata/orcl/ts2.dbf                         NO
UNDOTBS1             /u01/app/oracle/oradata/orcl/undotbs01.dbf                   YES

NAME                 DATAFILE_NAME                                                AUT
-------------------- ------------------------------------------------------------ ---
USERS                /u01/app/oracle/oradata/orcl/users01.dbf                     YES

34 rows selected.

SYS@orcl> create undo tablespace tbs_21_undo datafile '/u01/app/oracle/oradata/orcl/tbs_21_undo.dbf' size 10m;

Tablespace created.


SYS@orcl> select distinct t1.name,t2.name datafile_name  ,t.autoextensible from v$tablespace t1,v$datafile t2    ,dba_data_files t where t1.name=t.tablespace_name   and t1.ts# = t2.ts#    order by t1.name asc;

NAME                 DATAFILE_NAME                                                AUT
-------------------- ------------------------------------------------------------ ---
COMPRESS_01          /u01/app/oracle/oradata/orcl/compress_01.dbf                 NO
COMPRESS_02          /u01/app/oracle/oradata/orcl/compress_02.dbf                 NO
EXAMPLE              /u01/app/oracle/oradata/orcl/example01.dbf                   YES
SYSAUX               /u01/app/oracle/oradata/orcl/sysaux01.dbf                    YES
SYSTEM               /u01/app/oracle/oradata/orcl/system01.dbf                    YES
TBSP_1               /u01/app/oracle/oradata/orcl/tbsp_1.dbf                      YES
TBS_01               /u01/app/oracle/oradata/orcl/tbs_01.dbf                      NO
TBS_02               /u01/app/oracle/oradata/orcl/tbs_02_01.dbf                   NO
TBS_02               /u01/app/oracle/oradata/orcl/tbs_02_02.dbf                   NO
TBS_03               /u01/app/oracle/oradata/orcl/tbs_03.dbf                      YES
TBS_04               /u01/app/oracle/oradata/orcl/tbs_04.dbf                      YES

NAME                 DATAFILE_NAME                                                AUT
-------------------- ------------------------------------------------------------ ---
TBS_05               /u01/app/oracle/oradata/orcl/tbs_05.dbf                      YES
TBS_06               /u01/app/oracle/oradata/orcl/tbs_06.dbf                      NO
TBS_07               /u01/app/oracle/oradata/orcl/tbs_07.dbf                      NO
TBS_08               /u01/app/oracle/oradata/orcl/tbs_08.dbf                      NO
TBS_09               /u01/app/oracle/oradata/orcl/tbs_09.dbf                      NO
TBS_10               /u01/app/oracle/oradata/orcl/tbs_10.dbf                      NO
TBS_11               /u01/app/oracle/oradata/orcl/tbs_11.dbf                      NO
TBS_12               /u01/app/oracle/oradata/orcl/tbs_12_01.dbf                   YES
TBS_13               /u01/app/oracle/oradata/orcl/tbs_13.dbf                      NO
TBS_14               /u01/app/oracle/oradata/orcl/tbs_14.dbf                      NO
TBS_15               /u01/app/oracle/oradata/orcl/tbs_15.dbf                      NO

NAME                 DATAFILE_NAME                                                AUT
-------------------- ------------------------------------------------------------ ---
TBS_17_WALLET        /u01/app/oracle/oradata/orcl/tbs_17_wallet.dbf               NO
TBS_21_UNDO          /u01/app/oracle/oradata/orcl/tbs_21_undo.dbf                 NO
TBS_BIG_1            /u01/app/oracle/oradata/orcl/datafilebig_1.dfb               NO
TBS_TEST1            /u01/app/oracle/oradata/orcl/datafile1.dbf                   NO
TBS_TEST4            /u01/app/oracle/oradata/orcl/datafile4.dbf                   NO
TBS_TEST5            /u01/app/oracle/oradata/orcl/datafile5.dbf                   YES
TBS_TEST_3           /u01/app/oracle/oradata/orcl/datafile3.dbf                   YES
TEST                 /u01/app/oracle/oradata/orcl/test_01.dbf                     NO
TEST2                /u01/app/oracle/oradata/orcl/test02.dbf                      YES
TS_1                 /u01/app/oracle/oradata/orcl/ts1.dbf                         NO
TS_2                 /u01/app/oracle/oradata/orcl/ts2.dbf                         NO

NAME                 DATAFILE_NAME                                                AUT
-------------------- ------------------------------------------------------------ ---
UNDOTBS1             /u01/app/oracle/oradata/orcl/undotbs01.dbf                   YES
USERS                /u01/app/oracle/oradata/orcl/users01.dbf                     YES

35 rows selected.

SYS@orcl>




           23:创建非标准块的表空间



---查看系统参数  db_16k_cache_size 的大小
19:57:06 SYS@orcl> show parameter db_16k_cache_size

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
db_16k_cache_size                    big integer 16M
---修改系统参数 db_16k_cache_size 的大小为 32M
19:57:39 SYS@orcl> alter system set db_16k_cache_size =32M ;

System altered.
---查看系统参数  db_16k_cache_size 的大小
19:57:46 SYS@orcl> show parameter db_16k_cache_size

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
db_16k_cache_size                    big integer 32M

---设置 plsql 属性值
19:59:31 SYS@orcl> col name for a30;
19:59:39 SYS@orcl> col DATAFILE_NAME for a80;
19:59:51 SYS@orcl> set linesize 200;
---查询表空间名及其对应的表空间数据文件
20:00:04 SYS@orcl> select distinct t1.name,t2.name datafile_name  ,t.autoextensible from v$tablespace t1,v$datafile t2    ,dba_data_files t where t1.name=t.tablespace_name   and t1.ts# = t2.ts#    order by t1.name asc;

NAME                           DATAFILE_NAME                                                                    AUT
------------------------------ -------------------------------------------------------------------------------- ---
COMPRESS_01                    /u01/app/oracle/oradata/orcl/compress_01.dbf                                     NO
COMPRESS_02                    /u01/app/oracle/oradata/orcl/compress_02.dbf                                     NO
EXAMPLE                        /u01/app/oracle/oradata/orcl/example01.dbf                                       YES
SYSAUX                         /u01/app/oracle/oradata/orcl/sysaux01.dbf                                        YES
SYSTEM                         /u01/app/oracle/oradata/orcl/system01.dbf                                        YES
TBSP_1                         /u01/app/oracle/oradata/orcl/tbsp_1.dbf                                          YES
TBS_01                         /u01/app/oracle/oradata/orcl/tbs_01.dbf                                          NO
TBS_02                         /u01/app/oracle/oradata/orcl/tbs_02_01.dbf                                       NO
TBS_02                         /u01/app/oracle/oradata/orcl/tbs_02_02.dbf                                       NO
TBS_03                         /u01/app/oracle/oradata/orcl/tbs_03.dbf                                          YES
TBS_04                         /u01/app/oracle/oradata/orcl/tbs_04.dbf                                          YES

NAME                           DATAFILE_NAME                                                                    AUT
------------------------------ -------------------------------------------------------------------------------- ---
TBS_05                         /u01/app/oracle/oradata/orcl/tbs_05.dbf                                          YES
TBS_06                         /u01/app/oracle/oradata/orcl/tbs_06.dbf                                          NO
TBS_07                         /u01/app/oracle/oradata/orcl/tbs_07.dbf                                          NO
TBS_08                         /u01/app/oracle/oradata/orcl/tbs_08.dbf                                          NO
TBS_09                         /u01/app/oracle/oradata/orcl/tbs_09.dbf                                          NO
TBS_10                         /u01/app/oracle/oradata/orcl/tbs_10.dbf                                          NO
TBS_11                         /u01/app/oracle/oradata/orcl/tbs_11.dbf                                          NO
TBS_12                         /u01/app/oracle/oradata/orcl/tbs_12_01.dbf                                       YES
TBS_13                         /u01/app/oracle/oradata/orcl/tbs_13.dbf                                          NO
TBS_14                         /u01/app/oracle/oradata/orcl/tbs_14.dbf                                          NO
TBS_15                         /u01/app/oracle/oradata/orcl/tbs_15.dbf                                          NO

NAME                           DATAFILE_NAME                                                                    AUT
------------------------------ -------------------------------------------------------------------------------- ---
TBS_17_WALLET                  /u01/app/oracle/oradata/orcl/tbs_17_wallet.dbf                                   NO
TBS_21_UNDO                    /u01/app/oracle/oradata/orcl/tbs_21_undo.dbf                                     NO
TBS_BIG_1                      /u01/app/oracle/oradata/orcl/datafilebig_1.dfb                                   NO
TBS_TEST1                      /u01/app/oracle/oradata/orcl/datafile1.dbf                                       NO
TBS_TEST4                      /u01/app/oracle/oradata/orcl/datafile4.dbf                                       NO
TBS_TEST5                      /u01/app/oracle/oradata/orcl/datafile5.dbf                                       YES
TBS_TEST_3                     /u01/app/oracle/oradata/orcl/datafile3.dbf                                       YES
TEST                           /u01/app/oracle/oradata/orcl/test_01.dbf                                         NO
TEST2                          /u01/app/oracle/oradata/orcl/test02.dbf                                          YES
TS_1                           /u01/app/oracle/oradata/orcl/ts1.dbf                                             NO
TS_2                           /u01/app/oracle/oradata/orcl/ts2.dbf                                             NO

NAME                           DATAFILE_NAME                                                                    AUT
------------------------------ -------------------------------------------------------------------------------- ---
UNDOTBS1                       /u01/app/oracle/oradata/orcl/undotbs01.dbf                                       YES
USERS                          /u01/app/oracle/oradata/orcl/users01.dbf                                         YES

35 rows selected.
----创建非标准块表空间
20:00:06 SYS@orcl> create tablespace tbs_22_blocksize datafile '/u01/app/oracle/oradata/orcl/tbs_22_blocksize datafile.dbf' size 10m blocksize 16k;

Tablespace created.
---查询表空间名及其对应的表空间数据文件
20:01:05 SYS@orcl> select distinct t1.name,t2.name datafile_name  ,t.autoextensible from v$tablespace t1,v$datafile t2    ,dba_data_files t where t1.name=t.tablespace_name   and t1.ts# = t2.ts#    order by t1.name asc;

NAME                           DATAFILE_NAME                                                                    AUT
------------------------------ -------------------------------------------------------------------------------- ---
COMPRESS_01                    /u01/app/oracle/oradata/orcl/compress_01.dbf                                     NO
COMPRESS_02                    /u01/app/oracle/oradata/orcl/compress_02.dbf                                     NO
EXAMPLE                        /u01/app/oracle/oradata/orcl/example01.dbf                                       YES
SYSAUX                         /u01/app/oracle/oradata/orcl/sysaux01.dbf                                        YES
SYSTEM                         /u01/app/oracle/oradata/orcl/system01.dbf                                        YES
TBSP_1                         /u01/app/oracle/oradata/orcl/tbsp_1.dbf                                          YES
TBS_01                         /u01/app/oracle/oradata/orcl/tbs_01.dbf                                          NO
TBS_02                         /u01/app/oracle/oradata/orcl/tbs_02_01.dbf                                       NO
TBS_02                         /u01/app/oracle/oradata/orcl/tbs_02_02.dbf                                       NO
TBS_03                         /u01/app/oracle/oradata/orcl/tbs_03.dbf                                          YES
TBS_04                         /u01/app/oracle/oradata/orcl/tbs_04.dbf                                          YES

NAME                           DATAFILE_NAME                                                                    AUT
------------------------------ -------------------------------------------------------------------------------- ---
TBS_05                         /u01/app/oracle/oradata/orcl/tbs_05.dbf                                          YES
TBS_06                         /u01/app/oracle/oradata/orcl/tbs_06.dbf                                          NO
TBS_07                         /u01/app/oracle/oradata/orcl/tbs_07.dbf                                          NO
TBS_08                         /u01/app/oracle/oradata/orcl/tbs_08.dbf                                          NO
TBS_09                         /u01/app/oracle/oradata/orcl/tbs_09.dbf                                          NO
TBS_10                         /u01/app/oracle/oradata/orcl/tbs_10.dbf                                          NO
TBS_11                         /u01/app/oracle/oradata/orcl/tbs_11.dbf                                          NO
TBS_12                         /u01/app/oracle/oradata/orcl/tbs_12_01.dbf                                       YES
TBS_13                         /u01/app/oracle/oradata/orcl/tbs_13.dbf                                          NO
TBS_14                         /u01/app/oracle/oradata/orcl/tbs_14.dbf                                          NO
TBS_15                         /u01/app/oracle/oradata/orcl/tbs_15.dbf                                          NO

NAME                           DATAFILE_NAME                                                                    AUT
------------------------------ -------------------------------------------------------------------------------- ---
TBS_17_WALLET                  /u01/app/oracle/oradata/orcl/tbs_17_wallet.dbf                                   NO
TBS_21_UNDO                    /u01/app/oracle/oradata/orcl/tbs_21_undo.dbf                                     NO
TBS_22_BLOCKSIZE               /u01/app/oracle/oradata/orcl/tbs_22_blocksize datafile.dbf                       NO
TBS_BIG_1                      /u01/app/oracle/oradata/orcl/datafilebig_1.dfb                                   NO
TBS_TEST1                      /u01/app/oracle/oradata/orcl/datafile1.dbf                                       NO
TBS_TEST4                      /u01/app/oracle/oradata/orcl/datafile4.dbf                                       NO
TBS_TEST5                      /u01/app/oracle/oradata/orcl/datafile5.dbf                                       YES
TBS_TEST_3                     /u01/app/oracle/oradata/orcl/datafile3.dbf                                       YES
TEST                           /u01/app/oracle/oradata/orcl/test_01.dbf                                         NO
TEST2                          /u01/app/oracle/oradata/orcl/test02.dbf                                          YES
TS_1                           /u01/app/oracle/oradata/orcl/ts1.dbf                                             NO

NAME                           DATAFILE_NAME                                                                    AUT
------------------------------ -------------------------------------------------------------------------------- ---
TS_2                           /u01/app/oracle/oradata/orcl/ts2.dbf                                             NO
UNDOTBS1                       /u01/app/oracle/oradata/orcl/undotbs01.dbf                                       YES
USERS                          /u01/app/oracle/oradata/orcl/users01.dbf                                         YES

36 rows selected.

20:01:07 SYS@orcl>





           24:表空间的脱机和联机


语法:

 alter tablespace 名称 offline;
     alter tablespace 名称 online;


示例:

SYS@orcl> select distinct t1.name,t2.name datafile_name  ,t.autoextensible ,t2.STATUS,t2.ONLINE_CHANGE#  ,t2.OFFLINE_CHANGE#  from v$tablespace t1,v$datafile t2    ,dba_data_files t where t1.name=t.tablespace_name   and t1.ts# = t2.ts# and t1.name ='TBSP_1'   order by t1.name asc;

NAME                           DATAFILE_NAME                                                                    AUT STATUS  ONLINE_CHANGE# OFFLINE_CHANGE#
------------------------------ -------------------------------------------------------------------------------- --- ------- -------------- ---------------
TBSP_1                         /u01/app/oracle/oradata/orcl/tbsp_1.dbf                                          YES ONLINE         7446799         7446780

SYS@orcl> alter tablespace TBSP_1 offline;

Tablespace altered.

SYS@orcl> select distinct t1.name,t2.name datafile_name  ,t.autoextensible ,t2.STATUS,t2.ONLINE_CHANGE#  ,t2.OFFLINE_CHANGE#  from v$tablespace t1,v$datafile t2    ,dba_data_files t where t1.name=t.tablespace_name   and t1.ts# = t2.ts# and t1.name ='TBSP_1'   order by t1.name asc;

NAME                           DATAFILE_NAME                                                                    AUT STATUS  ONLINE_CHANGE# OFFLINE_CHANGE#
------------------------------ -------------------------------------------------------------------------------- --- ------- -------------- ---------------
TBSP_1                         /u01/app/oracle/oradata/orcl/tbsp_1.dbf                                              OFFLINE        7446799         7446780

SYS@orcl> alter tablespace TBSP_1 online;

Tablespace altered.

SYS@orcl> select distinct t1.name,t2.name datafile_name  ,t.autoextensible ,t2.STATUS,t2.ONLINE_CHANGE#  ,t2.OFFLINE_CHANGE#  from v$tablespace t1,v$datafile t2    ,dba_data_files t where t1.name=t.tablespace_name   and t1.ts# = t2.ts# and t1.name ='TBSP_1'   order by t1.name asc;

NAME                           DATAFILE_NAME                                                                    AUT STATUS  ONLINE_CHANGE# OFFLINE_CHANGE#
------------------------------ -------------------------------------------------------------------------------- --- ------- -------------- ---------------
TBSP_1                         /u01/app/oracle/oradata/orcl/tbsp_1.dbf                                          YES ONLINE         7446856         7446834

SYS@orcl>




           25:表空间重命名


语法:

 alter tablespace 旧名称 rename to 新名称;

示例:

SYS@orcl> select distinct t1.name,t2.name datafile_name  ,t.autoextensible ,t2.STATUS,t2.ONLINE_CHANGE#  ,t2.OFFLINE_CHANGE#  from v$tablespace t1,v$datafile t2    ,dba_data_files t where t1.name=t.tablespace_name   and t1.ts# = t2.ts# and t1.name ='TBSP_1'   order by t1.name asc;

NAME                           DATAFILE_NAME                                                                    AUT STATUS  ONLINE_CHANGE# OFFLINE_CHANGE#
------------------------------ -------------------------------------------------------------------------------- --- ------- -------------- ---------------
TBSP_1                         /u01/app/oracle/oradata/orcl/tbsp_1.dbf                                          YES ONLINE         7446856         7446834


----重命名 
SYS@orcl> alter tablespace TBSP_1 rename  to  TBSP_1_1;

Tablespace altered.
---查询表 空间信息
SYS@orcl> select distinct t1.name,t2.name datafile_name  ,t.autoextensible ,t2.STATUS,t2.ONLINE_CHANGE#  ,t2.OFFLINE_CHANGE#  from v$tablespace t1,v$datafile t2    ,dba_data_files t where t1.name=t.tablespace_name   and t1.ts# = t2.ts# and t1.name ='TBSP_1_1'   order by t1.name asc;

NAME                           DATAFILE_NAME                                                                    AUT STATUS  ONLINE_CHANGE# OFFLINE_CHANGE#
------------------------------ -------------------------------------------------------------------------------- --- ------- -------------- ---------------
TBSP_1_1                       /u01/app/oracle/oradata/orcl/tbsp_1.dbf                                          YES ONLINE         7446856         7446834

SYS@orcl>


           26:表空间删除


语法:

   -- 删除空的表空间,不会删除表空间所对应的数据文件
    drop tablespace 名称;
  --  删除非空的表空间,不会删除表空间所对应的数据文件
    drop tablespace 名称 including contents;
  --  删除非空的表空间,同时删除表空间所对应的数据文件
    drop tablespace my12 including contents and datafiles;


           27:表空间扩容


语法:

     --  1)增加数据文件
         alter tablespace 名称 add datafile '路径' size 大小;
     ---  2)更改自动扩展
         alter database datafile '路径' autoextend on;

         CREATE TABLESPACE mytbs8 DATAFILE '/u01/app/oracle/oradata/orcl/mytbs08.dbf' SIZE 5M AUTOEXTEND ON NEXT 1M MAXSIZE 50M;
         alter database datafile '/u01/app/oracle/oradata/orcl/mytbs08.dbf' autoextend on next 1M maxsize unlimited;
         alter database datafile '/u01/app/oracle/oradata/orcl/mytbs08.dbf' autoextend off;

      --- 3)更改数据文件大小
         alter database datafile '路径' resize 大小;

示例:

-----查询表空间信息
SYS@orcl> select distinct t1.name,t2.name datafile_name  ,t.autoextensible ,t2.STATUS,t2.ONLINE_CHANGE#  ,t2.OFFLINE_CHANGE#  from v$tablespace t1,v$datafile t2    ,dba_data_files t where t1.name=t.tablespace_name   and t1.ts# = t2.ts# and t1.name ='TBSP_1_1'   order by t1.name asc;

NAME                           DATAFILE_NAME                                                                    AUT STATUS  ONLINE_CHANGE# OFFLINE_CHANGE#
------------------------------ -------------------------------------------------------------------------------- --- ------- -------------- ---------------
TBSP_1_1                       /u01/app/oracle/oradata/orcl/tbsp_1.dbf                                          YES ONLINE         7446856         7446834

----创建表空间  tbs_25 初始化为2m 每次增长为1m 最大为3m;
SYS@orcl> create tablespace tbs_25 datafile '/u01/app/oracle/oradata/orcl/tbs_25.dbf' size 2m  autoextend on next 1m maxsize 3m;

Tablespace created.
---查看表空间tbs_25 信息

SYS@orcl> select distinct t1.name,t2.name datafile_name  ,t.autoextensible ,t2.STATUS,t2.ONLINE_CHANGE#  ,t2.OFFLINE_CHANGE#  from v$tablespace t1,v$datafile t2    ,dba_data_files t where t1.name=t.tablespace_name   and t1.ts# = t2.ts# and t1.name ='TBS_25'   order by t1.name asc;

NAME                           DATAFILE_NAME                                                                    AUT STATUS  ONLINE_CHANGE# OFFLINE_CHANGE#
------------------------------ -------------------------------------------------------------------------------- --- ------- -------------- ---------------
TBS_25                         /u01/app/oracle/oradata/orcl/tbs_25.dbf                                          YES ONLINE               0               0
----把表空间为 tbs_25 设置为自动增长  每次增长为1m  没有限制最大大小
SYS@orcl> alter database datafile '/u01/app/oracle/oradata/orcl/tbs_25.dbf' autoextend on next 1m maxsize unlimited ;

Database altered.
---查看表空间tbs_25 信息
SYS@orcl> select distinct t1.name,t2.name datafile_name  ,t.autoextensible ,t2.STATUS,t2.ONLINE_CHANGE#  ,t2.OFFLINE_CHANGE#  from v$tablespace t1,v$datafile t2    ,dba_data_files t where t1.name=t.tablespace_name   and t1.ts# = t2.ts# and t1.name ='TBS_25'   order by t1.name asc;

NAME                           DATAFILE_NAME                                                                    AUT STATUS  ONLINE_CHANGE# OFFLINE_CHANGE#
------------------------------ -------------------------------------------------------------------------------- --- ------- -------------- ---------------
TBS_25                         /u01/app/oracle/oradata/orcl/tbs_25.dbf                                          YES ONLINE               0               0

---取消 表空间 tbs_25 为自动增长方式 
SYS@orcl> alter database datafile '/u01/app/oracle/oradata/orcl/tbs_25.dbf' autoextend off;

Database altered.
---查询表空间tbs_25的信息
SYS@orcl> select distinct t1.name,t2.name datafile_name  ,t.autoextensible ,t2.STATUS,t2.ONLINE_CHANGE#  ,t2.OFFLINE_CHANGE#  from v$tablespace t1,v$datafile t2    ,dba_data_files t where t1.name=t.tablespace_name   and t1.ts# = t2.ts# and t1.name ='TBS_25'   order by t1.name asc;

NAME                           DATAFILE_NAME                                                                    AUT STATUS  ONLINE_CHANGE# OFFLINE_CHANGE#
------------------------------ -------------------------------------------------------------------------------- --- ------- -------------- ---------------
TBS_25                         /u01/app/oracle/oradata/orcl/tbs_25.dbf                                          NO  ONLINE               0               0
---开启表空间tbs_25 为自动增长方式
SYS@orcl> alter database datafile '/u01/app/oracle/oradata/orcl/tbs_25.dbf' autoextend on;

Database altered.
---查看表空间tbs_25信息
SYS@orcl> select distinct t1.name,t2.name datafile_name  ,t.autoextensible ,t2.STATUS,t2.ONLINE_CHANGE#  ,t2.OFFLINE_CHANGE#  from v$tablespace t1,v$datafile t2    ,dba_data_files t where t1.name=t.tablespace_name   and t1.ts# = t2.ts# and t1.name ='TBS_25'   order by t1.name asc;

NAME                           DATAFILE_NAME                                                                    AUT STATUS  ONLINE_CHANGE# OFFLINE_CHANGE#
------------------------------ -------------------------------------------------------------------------------- --- ------- -------------- ---------------
TBS_25                         /u01/app/oracle/oradata/orcl/tbs_25.dbf                                          YES ONLINE               0               0

SYS@orcl> select distinct t1.name,t2.BLOCKS,t2.name datafile_name  ,t.autoextensible ,t2.STATUS,t2.ONLINE_CHANGE#  ,t2.OFFLINE_CHANGE#  from v$tablespace t1,v$datafile t2    ,dba_data_files t where t1.name=t.tablespace_name   and t1.ts# = t2.ts# and t1.name ='TBS_25'   order by t1.name asc;

NAME                               BLOCKS DATAFILE_NAME                                                                    AUT STATUS  ONLINE_CHANGE# OFFLINE_CHANGE#
------------------------------ ---------- -------------------------------------------------------------------------------- --- ------- -------------- ---------------
TBS_25                                256 /u01/app/oracle/oradata/orcl/tbs_25.dbf                                          YES ONLINE               0               0
---重置表空间大小为 2m 
SYS@orcl> alter database datafile '/u01/app/oracle/oradata/orcl/tbs_25.dbf' resize 2m;

Database altered.
---查看表空间tbs_25信息
SYS@orcl> select distinct t1.name,t2.BLOCKS,t2.name datafile_name  ,t.autoextensible ,t2.STATUS,t2.ONLINE_CHANGE#  ,t2.OFFLINE_CHANGE#  from v$tablespace t1,v$datafile t2    ,dba_data_files t where t1.name=t.tablespace_name   and t1.ts# = t2.ts# and t1.name ='TBS_25'   order by t1.name asc;

NAME                               BLOCKS DATAFILE_NAME                                                                    AUT STATUS  ONLINE_CHANGE# OFFLINE_CHANGE#
------------------------------ ---------- -------------------------------------------------------------------------------- --- ------- -------------- ---------------
TBS_25                                256 /u01/app/oracle/oradata/orcl/tbs_25.dbf                                          YES ONLINE               0               0

SYS@orcl>



           28:修改数据文件的可用性


语法:

--1)数据文件的脱机(需要在归档模式)
     alter database datafile '/home/oracle/my.dbf' offline;
 ---    2)数据文件的联机
     recover datafile 6;
     alter database datafile '/home/oracle/my.dbf' online;




           29:重命名和重定位数据文件


         -- 1)alter tablespace 用户创建的表空间,数据库在open状态下
 --      1、脱机表空间
 --      2、改变位置
  --     3、使用alter tablespace
 --      4、联机表空间
 --    2)alter database  所有的表空间(包含system),数据库在mount状态下
 --      1、mount状态
 --      2、改变位置
 --      3、使用alter database
  --     4、open   

           image


SYS@orcl> create tablespace  tbs_26 datafile '/u01/app/oracle/oradata/orcl/tbs_26.dbf' size 10m;

Tablespace created.

SYS@orcl>  select distinct t1.name,t2.name datafile_name  ,t.autoextensible from v$tablespace t1,v$datafile t2    ,dba_data_files t where t1.name=t.tablespace_name   and t1.ts# = t2.ts#  and t1.name='TBS_26'  order by t1.name asc;

NAME                           DATAFILE_NAME                                                                              AUT
------------------------------ ------------------------------------------------------------------------------------------ ---
TBS_26                         /u01/app/oracle/oradata/orcl/tbs_26.dbf                                                    NO



SYS@orcl>  select distinct t1.name,t2.name datafile_name  ,t.autoextensible ,t.ONLINE_STATUS  from v$tablespace t1,v$datafile t2    ,dba_data_files t where t1.name=t.tablespace_name   and t1.ts# = t2.ts#  and t1.name='TBS_26'  order by t1.name asc;

NAME                           DATAFILE_NAME                                                                              AUT ONLINE_
------------------------------ ------------------------------------------------------------------------------------------ --- -------
TBS_26                         /u01/app/oracle/oradata/orcl/tbs_26.dbf                                                    NO  ONLINE

SYS@orcl> alter tablespace tbs_26 offline;

Tablespace altered.

SYS@orcl>  select distinct t1.name,t2.name datafile_name  ,t.autoextensible ,t.ONLINE_STATUS  from v$tablespace t1,v$datafile t2    ,dba_data_files t where t1.name=t.tablespace_name   and t1.ts# = t2.ts#  and t1.name='TBS_26'  order by t1.name asc;

NAME                           DATAFILE_NAME                                                                              AUT ONLINE_
------------------------------ ------------------------------------------------------------------------------------------ --- -------
TBS_26                         /u01/app/oracle/oradata/orcl/tbs_26.dbf                                                        OFFLINE

SYS@orcl> ho mv /u01/app/oracle/oradata/orcl/tbs_26.dbf  /u01/app/oracle/product/11.2.0/db_1/dbs/tbs_26.dbf

SYS@orcl> alter tablespace TBS_26 rename datafile '/u01/app/oracle/oradata/orcl/tbs_26.dbf' to '/u01/app/oracle/product/11.2.0/db_1/dbs/tbs_26.dbf' ;

Tablespace altered.

SYS@orcl> alter tablespace TBS_26  online;

Tablespace altered.

SYS@orcl>  select distinct t1.name,t2.name datafile_name  ,t.autoextensible ,t.ONLINE_STATUS  from v$tablespace t1,v$datafile t2    ,dba_data_files t where t1.name=t.tablespace_name   and t1.ts# = t2.ts#  and t1.name='TBS_26'  order by t1.name asc;

NAME                           DATAFILE_NAME                                                                              AUT ONLINE_
------------------------------ ------------------------------------------------------------------------------------------ --- -------
TBS_26                         /u01/app/oracle/product/11.2.0/db_1/dbs/tbs_26.dbf                                         NO  ONLINE

SYS@orcl>




           30:删除数据文件



  ALTER TABLESPACE 表空间名称 DROP DATAFILE '位置';
      ALTER TABLESPACE 表空间名称 DROP TEMPFILE '位置';




           31:UNDO表空间


1、概念
       2、参数
       undo_retention
       1、undo表空间是自动扩展的

       2、undo表空间不是自动扩展的,表空间大小固定
       Guarantee


---从系统参数方式来查看undo表空间信息
22:02:48 SYS@orcl> show parameter undo;

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
undo_management                      string      AUTO
undo_retention                       integer     900
undo_tablespace                      string      UNDOTBS1
-----查看 undo表空间信息
22:02:54 SYS@orcl> select distinct t1.name,t2.name datafile_name  ,t.autoextensible from v$tablespace t1,v$datafile t2    ,dba_data_files t where t1.name=t.tablespace_name   and t1.ts# = t2.ts# and t1.name like '%UNDO%'   order by t1.name asc;

NAME                           DATAFILE_NAME                                                                              AUT
------------------------------ ------------------------------------------------------------------------------------------ ---
UNDOTBS1                       /u01/app/oracle/oradata/orcl/undotbs01.dbf                                                 YES
---创建一个 初始化为10m 大小为无限制的可增长的undo表空间
22:02:56 SYS@orcl> create undo tablespace  tbs_29_undo datafile '/u01/app/oracle/oradata/orcl/tbs_29_undo.dbf' size 10m autoextend on next 1m maxsize unlimited;

Tablespace created.

22:04:42 SYS@orcl> select distinct t1.name,t2.name datafile_name  ,t.autoextensible from v$tablespace t1,v$datafile t2    ,dba_data_files t where t1.name=t.tablespace_name   and t1.ts# = t2.ts# and t1.name like '%UNDO%'   order by t1.name asc;

NAME                           DATAFILE_NAME                                                                              AUT
------------------------------ ------------------------------------------------------------------------------------------ ---
TBS_29_UNDO                    /u01/app/oracle/oradata/orcl/tbs_29_undo.dbf                                               YES
UNDOTBS1                       /u01/app/oracle/oradata/orcl/undotbs01.dbf                                                 YES
---创建一个 初始化为10m 大小为无限制的可增长的undo表空间

22:04:47 SYS@orcl> create undo tablespace  tbs_30_undo datafile '/u01/app/oracle/oradata/orcl/tbs_30_undo.dbf' size 10m autoextend on next 1m maxsize unlimited;

Tablespace created.
-----查看 undo表空间信息
22:05:12 SYS@orcl> select distinct t1.name,t2.name datafile_name  ,t.autoextensible from v$tablespace t1,v$datafile t2    ,dba_data_files t where t1.name=t.tablespace_name   and t1.ts# = t2.ts# and t1.name like '%UNDO%'   order by t1.name asc;

NAME                           DATAFILE_NAME                                                                              AUT
------------------------------ ------------------------------------------------------------------------------------------ ---
TBS_29_UNDO                    /u01/app/oracle/oradata/orcl/tbs_29_undo.dbf                                               YES
TBS_30_UNDO                    /u01/app/oracle/oradata/orcl/tbs_30_undo.dbf                                               YES
UNDOTBS1                       /u01/app/oracle/oradata/orcl/undotbs01.dbf                                                 YES
---从系统参数方式来查看undo表空间信息
22:05:13 SYS@orcl> show parameter undo;

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
undo_management                      string      AUTO
undo_retention                       integer     900
undo_tablespace                      string      UNDOTBS1
---总结:从上述操作得知,不管系统存在多少个undo表空间,只能有且只有1个undo空间为默认表空间

----切换 undo 表空间,切换后,会默认提交切换前所有为没有进行事务提交的的数据
22:05:23 SYS@orcl> alter system set undo_tablespace=TBS_29_UNDO;

System altered.
---从系统参数方式来查看undo表空间信息
22:07:05 SYS@orcl> show parameter undo;

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
undo_management                      string      AUTO
undo_retention                       integer     900
undo_tablespace                      string      TBS_29_UNDO
22:07:08 SYS@orcl> ---undo 表空间作用:1:实例恢复 2:闪回操作 3:回滚操作
22:08:58 SYS@orcl> ---undo 表空间存放旧的值

-----实验:ssh窗口1:

---创建t表
22:09:20 SYS@orcl> create table t(id number(38));

Table created.

22:09:47 SYS@orcl> desc t
 Name                                                                                                              Null?    Type
 ----------------------------------------------------------------------------------------------------------------- -------- ----------------------------------------------------------------------------
 ID                                                                                                                         NUMBER(38)
---插入数据
22:09:51 SYS@orcl> insert into t values(1);

1 row created.

22:10:15 SYS@orcl> commit;

Commit complete.

22:10:17 SYS@orcl> select * from t;

        ID
----------
         1
---更改数据  此时不进行事务提交操作 
22:10:27 SYS@orcl> update t set id =2;

1 row updated.

22:10:41 SYS@orcl> select * from t;

        ID
----------
         2

-----实验:ssh窗口2:

[root@localhost ~]# su - oracle
[oracle@localhost ~]$ rlwrap sqlplus  sys/oracle as sysdba;

SQL*Plus: Release 11.2.0.3.0 Production on Wed Jun 6 22:11:29 2018

Copyright (c) 1982, 2011, Oracle.  All rights reserved.


Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options

SYS@orcl> select * from t;

        ID
----------
         1


---在事务还没进行提交时,在不同的客户端查询来看结果是不一样的。进一步体现了 数据一致性的原则

-----实验:ssh窗口1:进行 undo表空间的切换

----查看undo信息
22:10:49 SYS@orcl> show parameter und

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
background_core_dump                 string      partial
background_dump_dest                 string      /u01/app/oracle/diag/rdbms/orc
                                                 l/orcl/trace
undo_management                      string      AUTO
undo_retention                       integer     900
undo_tablespace                      string      TBS_29_UNDO
---切换undo表空间
22:12:06 SYS@orcl> alter system set undo_tablespace=TBS_30_UNDO;

System altered.
---查看undo表空间信息
22:12:36 SYS@orcl> show parameter und

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
background_core_dump                 string      partial
background_dump_dest                 string      /u01/app/oracle/diag/rdbms/orc
                                                 l/orcl/trace
undo_management                      string      AUTO
undo_retention                       integer     900
undo_tablespace                      string      TBS_30_UNDO
---查看 t 表数据信息
22:12:43 SYS@orcl> select * from t;

        ID
----------
         2

-----实验:ssh窗口2:

SYS@orcl> select * from t;

        ID
----------
         2

SYS@orcl>

----因为切换了 undo表空间,之前的 未提交事务的旧数据已经丢失了。从另外一个角度来讲已经进行了事务的提交操作了。所有的客户端用户都也可以查看到该表的数据修改后的情况。

undo_retention                       integer     900

---这个值表示 undo表空间里的数据可以保留多少秒的时间。如果undo表空间有充足的空闲空间,则旧的数据可以保留 规定的最大值 undo数据不会被覆盖,如果undo表空间的空闲空间不足,undo数据会被覆盖。

image

image

image



实验
1、查看undo
2、修改undo
3、创建undo表空间(自动扩展)
4、查看undo表空间信息(dba_tablespaces,dba_data_files)
5、undo表空间重命名
6、undo表空间增加数据文件
7、数据文件修改自动扩展
8、切换undo表空间
9、删除undo表空间


---一、用ALTER SYSTEM更改初始化参数UNDO_RETENTION为1200

---二、创建UNDO 表空间my_undo,30M
CRE... UNDO TAB.... my_undo DATAFILE ...... SIZE ... autoextend on;

---三、使用dba_tablespaces查看UNDO 表空间信息

---四、使用dba_data_files查看UNDO 表空间的数据文件
select tablespace_name,file_name,bytes/1024/1024 MB,autoextensible from dba_data_files where tablespace_name='MY_UNDO';

---五、重命名
alter tablespace my_undo rename to wl_undo;

---六、增加数据文件
alter tablespace wl_undo add datafile '/u01/app/oracle/oradata/orcl/my_undo1.dbf' size 100M;
select tablespace_name,file_name,bytes/1024/1024 MB,autoextensible from dba_data_files where tablespace_name='WL_UNDO';
---将数据文件修改为自动扩展模式
alter database datafile '/u01/app/oracle/oradata/orcl/my_undo1.dbf' autoextend on;
select tablespace_name,file_name,bytes/1024/1024 MB,autoextensible from dba_data_files where tablespace_name='WL_UNDO';

----七、切换到新建的UNDO 表空间
show parameter undo
alter system set undo_tablespace=wl_undo;
show parameter undo

---八、删除UNDO 表空间
create undo tablespace undotbs2 datafile '/u01/app/oracle/oradata/orcl/undotbs2.dbf' size 10m autoextend on maxsize 100m retention guarantee;
retention guarantee ---保证在给定时间内还原记录一定会存在,不会被覆盖。
---另开会话:
create table t(id number,name varchar2(20));
insert into t values (1,'wl');
---没有提交事物 在另一会话切换undo表空间 
alter system set undo_tablespace=undotbs2;
show parameter undo
删除旧的表空间
drop tablespace WL_UNDO;
报错,到另一个会话提交事务
commit;
再删除,依然报错
drop tablespace WL_UNDO;
因在undo_retention参数数值范围内,oracle依旧保留旧的undo记录
ALTER SYSTEM SET UNDO_RETENTION=0 SCOPE=BOTH;
drop tablespace WL_UNDO;

九、使用dba_undo_extents看UNDO记录在那个表空间
insert into t values (2,'name');
不提交
select a.username,b.name,c.used_ublk from v$session a,v$rollname b,v$transaction c where a.saddr=c.ses_addr and b.usn=c.xidusn;
USERNAME NAME USED_UBLK
------------------------------ ------------------------------ ---------- 
SYS _SYSSMU27_345542384$ 1

select segment_name,tablespace_name,extent_id from dba_undo_extents where segment_name='_SYSSMU27_345542384$';








           32:





















六:管理归档日志


预备知识

           1:归档日志:

image


           2:日志的两种模式


1:非归档模式:

image

2:归档模式:

image


           3: 配置归档

image


           4: 归档日志命名格式

image


   



归档重做日志文件

      归档重做日志文件

归档重做日志文件是联机重做日志组的已填充成员的副本。此文件不是该数据库的一部分,而是由该数据库生成、并被写到用户指定位置的联机重做日志文件脱机副本。

归档重做日志文件是备份和恢复策略的关键部分。可以使用归档重做日志文件:
1)恢复数据库备份
2)更新备用数据库
3)使用 LogMiner 实用程序获取有关数据库的历史信息
归档即是生成一个归档重做日志文件操作。归档可以是自动的或手动的,只有在数据库处于归档模式下时才会归档。一个归档重做日志文件包括重做条目和联机重做日志组的相同成员的日志序列号。

      查看归档日志信息

--   1、列出归档日志信息
SYS@orcl> archive log list
Database log mode              Archive Mode
Automatic archival             Enabled
Archive destination            USE_DB_RECOVERY_FILE_DEST
Oldest online log sequence     307
Next log sequence to archive   310
Current log sequence           310
--查看 后台进程
SYS@orcl> ho ps -ef |grep ora_ |grep arc
oracle    3907  5559  0 21:40 pts/2    00:00:00 /bin/bash -c ps -ef |grep ora_ |grep arc
oracle    5701     1  0 19:18 ?        00:00:00 ora_arc0_orcl
oracle    5703     1  0 19:18 ?        00:00:00 ora_arc1_orcl
oracle    5705     1  0 19:18 ?        00:00:00 ora_arc2_orcl
oracle    5707     1  0 19:18 ?        00:00:00 ora_arc3_orcl

SYS@orcl>

    

      显示归档进程

SYS@orcl> select * from v$archive_processes;

   PROCESS STATUS     LOG_SEQUENCE STAT
---------- ---------- ------------ ----
         0 ACTIVE                0 IDLE
         1 ACTIVE                0 IDLE
         2 ACTIVE                0 IDLE
         3 ACTIVE                0 IDLE
         4 STOPPED               0 IDLE
         5 STOPPED               0 IDLE
         6 STOPPED               0 IDLE
         7 STOPPED               0 IDLE
         8 STOPPED               0 IDLE
         9 STOPPED               0 IDLE
        10 STOPPED               0 IDLE

   PROCESS STATUS     LOG_SEQUENCE STAT
---------- ---------- ------------ ----
        11 STOPPED               0 IDLE
        12 STOPPED               0 IDLE
        13 STOPPED               0 IDLE
        14 STOPPED               0 IDLE
        15 STOPPED               0 IDLE
        16 STOPPED               0 IDLE
        17 STOPPED               0 IDLE
        18 STOPPED               0 IDLE
        19 STOPPED               0 IDLE
        20 STOPPED               0 IDLE
        21 STOPPED               0 IDLE

   PROCESS STATUS     LOG_SEQUENCE STAT
---------- ---------- ------------ ----
        22 STOPPED               0 IDLE
        23 STOPPED               0 IDLE
        24 STOPPED               0 IDLE
        25 STOPPED               0 IDLE
        26 STOPPED               0 IDLE
        27 STOPPED               0 IDLE
        28 STOPPED               0 IDLE
        29 STOPPED               0 IDLE

30 rows selected.

SYS@orcl>

 

        配置归档进程

 

---将数据库转变为 archivelog模式,默认情况下会自动启动两个归档进程,通过改变初始化参数的值,动态地增加或降低归档进程的个数

SYS@orcl> alter system set log_archive_max_processes=3;

System altered.

SYS@orcl>

 

 

      显示归档日志信息


----显示归档日志信息

SYS@orcl> col name format a130
SYS@orcl> set linesize 200
SYS@orcl> select name ,sequence# ,first_change# from v$archived_log;

NAME                                                                                                                                SEQUENCE# FIRST_CHANGE#
---------------------------------------------------------------------------------------------------------------------------------- ---------- -------------
/u01/app/oracle/fast_recovery_area/ORCL/archivelog/2016_11_30/o1_mf_1_6_d3vpslgx_.arc                                                       6        871312
/u01/app/oracle/fast_recovery_area/ORCL/archivelog/2016_12_01/o1_mf_1_7_d409htxg_.arc                                                       7        882050
/u01/app/oracle/fast_recovery_area/ORCL/archivelog/2016_12_01/o1_mf_1_8_d40c7orl_.arc                                                       8        904103
/u01/app/oracle/fast_recovery_area/ORCL/archivelog/2016_12_02/o1_mf_1_9_d40l8y1c_.arc                                                       9        909624
/u01/app/oracle/fast_recovery_area/ORCL/archivelog/2016_12_07/o1_mf_1_10_d4j2obov_.arc                                                     10        923656
/u01/app/oracle/fast_recovery_area/ORCL/archivelog/2016_12_08/o1_mf_1_11_d4jtlscq_.arc                                                     11        944369
/u01/app/oracle/fast_recovery_area/ORCL/archivelog/2016_12_08/o1_mf_1_12_d4lhchob_.arc                                                     12        967164
/u01/app/oracle/fast_recovery_area/ORCL/archivelog/2016_12_08/o1_mf_1_13_d4lo17y0_.arc                                                     13       1000721
/u01/app/oracle/fast_recovery_area/ORCL/archivelog/2016_12_08/o1_mf_1_14_d4lw9xlx_.arc                                                     14       1024940
/u01/app/oracle/fast_recovery_area/ORCL/archivelog/2017_12_16/o1_mf_1_15_f39k9jq0_.arc                                                     15       1049002
/u01/app/oracle/fast_recovery_area/ORCL/archivelog/2017_12_16/o1_mf_1_16_f39oyfvs_.arc                                                     16       1082268

NAME                                                                                                                                SEQUENCE# FIRST_CHANGE#
---------------------------------------------------------------------------------------------------------------------------------- ---------- -------------
/u01/app/oracle/fast_recovery_area/ORCL/archivelog/2017_12_17/o1_mf_1_17_f3c0686v_.arc                                                     17       1091603
/u01/app/oracle/fast_recovery_area/ORCL/archivelog/2017_12_17/o1_mf_1_18_f3cmx4dq_.arc                                                     18       1124591
/u01/app/oracle/fast_recovery_area/ORCL/archivelog/2017_12_21/o1_mf_1_19_f3o4zttn_.arc                                                     19       1144841
/home/oracle/oracle_system_files_back/archivelog/archivelog_20180305/archive1/1_112_929245147.dbf                                         112       2940292
/home/oracle/oracle_system_files_back/archivelog/archivelog_20180305/archive2_1/1_112_929245147.dbf                                       112       2940292
/home/oracle/oracle_system_files_back/archivelog/archivelog_20180305/archive3_1/1_112_929245147.dbf                                       112       2940292
/home/oracle/oracle_system_files_back/archivelog/archivelog_20180305/archive5/1_112_929245147.dbf                                         112       2940292
/home/oracle/oracle_system_files_back/archivelog/archivelog_20180305/archive2/1_112_929245147.dbf                                         112       2940292
/home/oracle/oracle_system_files_back/archivelog/archivelog_20180305/archive1/1_113_929245147.dbf                                         113       2964077
/home/oracle/oracle_system_files_back/archivelog/archivelog_20180305/archive2_1/1_113_929245147.dbf                                       113       2964077
/home/oracle/oracle_system_files_back/archivelog/archivelog_20180305/archive3_1/1_113_929245147.dbf                                       113       2964077

NAME                                                                                                                                SEQUENCE# FIRST_CHANGE#
---------------------------------------------------------------------------------------------------------------------------------- ---------- -------------
/home/oracle/oracle_system_files_back/archivelog/archivelog_20180305/archive5/1_113_929245147.dbf                                         113       2964077
/home/oracle/oracle_system_files_back/archivelog/archivelog_20180305/archive2/1_113_929245147.dbf                                         113       2964077
/home/oracle/oracle_system_files_back/archivelog/archivelog_20180305/archive1/1_114_929245147.dbf                                         114       2997418
/home/oracle/oracle_system_files_back/archivelog/archivelog_20180305/archive2_1/1_114_929245147.dbf                                       114       2997418
/home/oracle/oracle_system_files_back/archivelog/archivelog_20180305/archive3_1/1_114_929245147.dbf                                       114       2997418
/home/oracle/oracle_system_files_back/archivelog/archivelog_20180305/archive5/1_114_929245147.dbf                                         114       2997418
/home/oracle/oracle_system_files_back/archivelog/archivelog_20180305/archive2/1_114_929245147.dbf                                         114       2997418
/home/oracle/oracle_system_files_back/archivelog/archivelog_20180305/archive1/1_115_929245147.dbf                                         115       3015682
/home/oracle/oracle_system_files_back/archivelog/archivelog_20180305/archive2_1/1_115_929245147.dbf                                       115       3015682
/home/oracle/oracle_system_files_back/archivelog/archivelog_20180305/archive3_1/1_115_929245147.dbf                                       115       3015682
/home/oracle/oracle_system_files_back/archivelog/archivelog_20180305/archive5/1_115_929245147.dbf                                         115       3015682

 

       显示日志操作模式

 

---Noarchivelog 模式只能用于保护例程失败,不能用于保护介质失败。archivelog模式不仅仅可用于保护例程失败,还可以用于保护介质失败

SYS@orcl> select name ,log_mode from v$database;

NAME      LOG_MODE
--------- ------------
ORCL      ARCHIVELOG

SYS@orcl>
SYS@orcl>

 

       查看归档日志文件路径信息

 

----查看归档文件路径信息
SYS@orcl> show parameter recover

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
db_recovery_file_dest                string      /u01/app/oracle/fast_recovery_
                                                 area
db_recovery_file_dest_size           big integer 2G
db_unrecoverable_scn_tracking        boolean     TRUE
recovery_parallelism                 integer     0
SYS@orcl>

     

SYS@orcl> ho ls /u01/app/oracle/fast_recovery_area
orcl  ORCL

SYS@orcl> ho ls /u01/app/oracle/fast_recovery_area/ORCL
archivelog  onlinelog

SYS@orcl> ho ls /u01/app/oracle/fast_recovery_area/ORCL/archivelog
2016_11_30  2016_12_02  2016_12_08  2017_12_17  2018_02_27  2018_04_24  2018_04_27  2018_04_29  2018_05_20
2016_12_01  2016_12_07  2017_12_16  2017_12_21  2018_04_23  2018_04_26  2018_04_28  2018_04_30

 

SYS@orcl> select destination from v$archive_dest;

 

      显示日志历史信息

/* THREAD# :标识重做线程号 SEQUENCE#:标识日志序列号 FIRST_CHANGE#:标识日志序列号对应的起始SCN号 FIRST_TIM :标识起始的SCN发生时间 SWITCH_CHANGE# 标识日志切换时的scn */ SYS@orcl> select * from v$loghist; THREAD# SEQUENCE# FIRST_CHANGE# FIRST_TIM SWITCH_CHANGE# ---------- ---------- ------------- --------- -------------- 1 27 1359599 24-DEC-17 1374615 1 28 1374615 24-DEC-17 1394713 1 29 1394713 24-DEC-17 1418763 1 30 1418763 24-DEC-17 1450752 1 31 1450752 26-DEC-17 1460292 1 32 1460292 26-DEC-17 1492872 1 33 1492872 27-DEC-17 1520582 1 34 1520582 27-DEC-17 1542876 1 35 1542876 28-DEC-17 1575070 1 36 1575070 28-DEC-17 1592280 1 37 1592280 28-DEC-17 1619663 THREAD# SEQUENCE# FIRST_CHANGE# FIRST_TIM SWITCH_CHANGE# ---------- ---------- ------------- --------- -------------- 1 38 1619663 29-DEC-17 1652615 1 39 1652615 29-DEC-17 1663717 1 40 1663717 29-DEC-17 1672636 1 41 1672636 29-DEC-17 1693714 1 42 1693714 30-DEC-17 1719181 1 43 1719181 30-DEC-17 1740013 1 44 1740013 02-JAN-18 1748813 1 45 1748813 02-JAN-18 1760422 1 46 1760422 03-JAN-18 1793491 1 47 1793491 03-JAN-18 1815590 1 48 1815590 03-JAN-18 1839858

 

 

 

      改变归档日志文件路径信息

image

方法一:alter system set log_archive_dest_1 ='location=/home/oracle/oracle_system_files_back/archivelog';

----查看 归档路径位置信息: 1-10:为本地或者远程路径 ;11-31 为远程路径地址
SYS@orcl> show parameter log_archive_dest

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
log_archive_dest                     string
log_archive_dest_1                   string
log_archive_dest_10                  string
log_archive_dest_11                  string
log_archive_dest_12                  string
log_archive_dest_13                  string
log_archive_dest_14                  string
log_archive_dest_15                  string
log_archive_dest_16                  string
log_archive_dest_17                  string
log_archive_dest_18                  string

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
log_archive_dest_19                  string
log_archive_dest_2                   string
log_archive_dest_20                  string
log_archive_dest_21                  string
log_archive_dest_22                  string
log_archive_dest_23                  string
log_archive_dest_24                  string
log_archive_dest_25                  string
log_archive_dest_26                  string
log_archive_dest_27                  string
log_archive_dest_28                  string

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
log_archive_dest_29                  string
log_archive_dest_3                   string
log_archive_dest_30                  string
log_archive_dest_31                  string
log_archive_dest_4                   string
log_archive_dest_5                   string
log_archive_dest_6                   string
log_archive_dest_7                   string
log_archive_dest_8                   string
log_archive_dest_9                   string
log_archive_dest_state_1             string      enable

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
log_archive_dest_state_10            string      enable
log_archive_dest_state_11            string      enable
log_archive_dest_state_12            string      enable
log_archive_dest_state_13            string      enable
log_archive_dest_state_14            string      enable
log_archive_dest_state_15            string      enable
log_archive_dest_state_16            string      enable
log_archive_dest_state_17            string      enable
log_archive_dest_state_18            string      enable
log_archive_dest_state_19            string      enable
log_archive_dest_state_2             string      enable

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
log_archive_dest_state_20            string      enable
log_archive_dest_state_21            string      enable
log_archive_dest_state_22            string      enable
log_archive_dest_state_23            string      enable
log_archive_dest_state_24            string      enable
log_archive_dest_state_25            string      enable
log_archive_dest_state_26            string      enable
log_archive_dest_state_27            string      enable
log_archive_dest_state_28            string      enable
log_archive_dest_state_29            string      enable
log_archive_dest_state_3             string      enable

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
log_archive_dest_state_30            string      enable
log_archive_dest_state_31            string      enable
log_archive_dest_state_4             string      enable
log_archive_dest_state_5             string      enable
log_archive_dest_state_6             string      enable
log_archive_dest_state_7             string      enable
log_archive_dest_state_8             string      enable
log_archive_dest_state_9             string      enable
SYS@orcl>

 

SYS@orcl> log_archive_dest_state_1             string      enable
----若该参数 为有效状态,则 对应的  log_archive_dest_1      设置的路劲是有效的
SYS@orcl> alter system set  log_archive_dest_1 ='location=/home/oracle/oracle_system_files_back/archivelog';

System altered.

SYS@orcl> alter system switch logfile;

System altered.

SYS@orcl> ho ls /home/oracle/oracle_system_files_back/archivelog/
1_310_929245147.dbf  archivelog_20180305

SYS@orcl> show parameter log_archive_dest

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
log_archive_dest                     string
log_archive_dest_1                   string      location=/home/oracle/oracle_s
                                                 ystem_files_back/archivelog
log_archive_dest_10                  string
log_archive_dest_11                  string
log_archive_dest_12                  string
log_archive_dest_13                  string
log_archive_dest_14                  string
log_archive_dest_15                  string
log_archive_dest_16                  string
log_archive_dest_17                  string

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
log_archive_dest_18                  string
log_archive_dest_19                  string
log_archive_dest_2                   string
log_archive_dest_20                  string
log_archive_dest_21                  string
log_archive_dest_22                  string
log_archive_dest_23                  string
log_archive_dest_24                  string
log_archive_dest_25                  string
log_archive_dest_26                  string
log_archive_dest_27                  string

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
log_archive_dest_28                  string
log_archive_dest_29                  string
log_archive_dest_3                   string
log_archive_dest_30                  string
log_archive_dest_31                  string
log_archive_dest_4                   string
log_archive_dest_5                   string
log_archive_dest_6                   string
log_archive_dest_7                   string
log_archive_dest_8                   string
log_archive_dest_9                   string

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
log_archive_dest_state_1             string      enable
log_archive_dest_state_10            string      enable
log_archive_dest_state_11            string      enable
log_archive_dest_state_12            string      enable
log_archive_dest_state_13            string      enable
log_archive_dest_state_14            string      enable
log_archive_dest_state_15            string      enable
log_archive_dest_state_16            string      enable
log_archive_dest_state_17            string      enable
log_archive_dest_state_18            string      enable
log_archive_dest_state_19            string      enable

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
log_archive_dest_state_2             string      enable
log_archive_dest_state_20            string      enable
log_archive_dest_state_21            string      enable
log_archive_dest_state_22            string      enable
log_archive_dest_state_23            string      enable
log_archive_dest_state_24            string      enable
log_archive_dest_state_25            string      enable
log_archive_dest_state_26            string      enable
log_archive_dest_state_27            string      enable
log_archive_dest_state_28            string      enable
log_archive_dest_state_29            string      enable

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
log_archive_dest_state_3             string      enable
log_archive_dest_state_30            string      enable
log_archive_dest_state_31            string      enable
log_archive_dest_state_4             string      enable
log_archive_dest_state_5             string      enable
log_archive_dest_state_6             string      enable
log_archive_dest_state_7             string      enable
log_archive_dest_state_8             string      enable
log_archive_dest_state_9             string      enable
SYS@orcl>

 

----修改 归档日志文件的后缀名称

--查看格式信息
SYS@orcl> show parameter format

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
log_archive_format                   string      %t_%s_%r.dbf
nls_date_format                      string
nls_time_format                      string
nls_time_tz_format                   string
nls_timestamp_format                 string
nls_timestamp_tz_format              string
permit_92_wrap_format                boolean     TRUE
star_transformation_enabled          string      FALSE
--修改归档日志文件的后缀名格式化格式
SYS@orcl> alter system set log_archive_format=' %t_%s_%r.arc' scope=spfile;

System altered.
---查看修改结果:
SYS@orcl> show parameter format

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
log_archive_format                   string      %t_%s_%r.dbf
nls_date_format                      string
nls_time_format                      string
nls_time_tz_format                   string
nls_timestamp_format                 string
nls_timestamp_tz_format              string
permit_92_wrap_format                boolean     TRUE
star_transformation_enabled          string      FALSE
 ---从结果来看,并没有变化,因此需要重新启动数据库
SYS@orcl>   shutdown immediate;    --关闭数据库
Database closed.
Database dismounted.
ORACLE instance shut down.
SYS@orcl> startup    ---启动数据库
ORACLE instance started.

Total System Global Area  523108352 bytes
Fixed Size                  1346052 bytes
Variable Size             377488892 bytes
Database Buffers          138412032 bytes
Redo Buffers                5861376 bytes
Database mounted.
Database opened.
--再次查看 归档日志文件名称格式化信息
SYS@orcl> show parameter format

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
log_archive_format                   string       %t_%s_%r.arc
nls_date_format                      string
nls_time_format                      string
nls_time_tz_format                   string
nls_timestamp_format                 string
nls_timestamp_tz_format              string
permit_92_wrap_format                boolean     TRUE
star_transformation_enabled          string      FALSE
---切换日志
SYS@orcl> alter system switch logfile;

System altered.
---查看新生成的归档日志的后缀名
SYS@orcl> ho ls /home/oracle/oracle_system_files_back/archivelog/
1_310_929245147.dbf  _1_311_929245147.arc  archivelog_20180305

SYS@orcl>

 

SYS@orcl> alter system set  log_archive_dest_2 ='location=/u01/app/oracle/fast_recovery_area/ORCL/archivelog' scope=spfile;

System altered.


SYS@orcl> shutdown immdiate;
SP2-0717: illegal SHUTDOWN option
SYS@orcl> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
SYS@orcl> startup
ORACLE instance started.

Total System Global Area  523108352 bytes
Fixed Size                  1346052 bytes
Variable Size             377488892 bytes
Database Buffers          138412032 bytes
Redo Buffers                5861376 bytes
Database mounted.
Database opened.
SYS@orcl> show parameter log_archive_dest

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
log_archive_dest                     string
log_archive_dest_1                   string      location=/home/oracle/oracle_s
                                                 ystem_files_back/archivelog
log_archive_dest_10                  string
log_archive_dest_11                  string
log_archive_dest_12                  string
log_archive_dest_13                  string
log_archive_dest_14                  string
log_archive_dest_15                  string
log_archive_dest_16                  string
log_archive_dest_17                  string

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
log_archive_dest_18                  string
log_archive_dest_19                  string
log_archive_dest_2                   string      location=/u01/app/oracle/fast_
                                                 recovery_area/ORCL/archivelog
log_archive_dest_20                  string
log_archive_dest_21                  string
log_archive_dest_22                  string
log_archive_dest_23                  string
log_archive_dest_24                  string
log_archive_dest_25                  string
log_archive_dest_26                  string

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
log_archive_dest_27                  string
log_archive_dest_28                  string
log_archive_dest_29                  string
log_archive_dest_3                   string
log_archive_dest_30                  string
log_archive_dest_31                  string
log_archive_dest_4                   string
log_archive_dest_5                   string
log_archive_dest_6                   string
log_archive_dest_7                   string
log_archive_dest_8                   string

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
log_archive_dest_9                   string
log_archive_dest_state_1             string      enable
log_archive_dest_state_10            string      enable
log_archive_dest_state_11            string      enable
log_archive_dest_state_12            string      enable
log_archive_dest_state_13            string      enable
log_archive_dest_state_14            string      enable
log_archive_dest_state_15            string      enable
log_archive_dest_state_16            string      enable
log_archive_dest_state_17            string      enable
log_archive_dest_state_18            string      enable

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
log_archive_dest_state_19            string      enable
log_archive_dest_state_2             string      enable
log_archive_dest_state_20            string      enable
log_archive_dest_state_21            string      enable
log_archive_dest_state_22            string      enable
log_archive_dest_state_23            string      enable
log_archive_dest_state_24            string      enable
log_archive_dest_state_25            string      enable
log_archive_dest_state_26            string      enable
log_archive_dest_state_27            string      enable
log_archive_dest_state_28            string      enable

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
log_archive_dest_state_29            string      enable
log_archive_dest_state_3             string      enable
log_archive_dest_state_30            string      enable
log_archive_dest_state_31            string      enable
log_archive_dest_state_4             string      enable
log_archive_dest_state_5             string      enable
log_archive_dest_state_6             string      enable
log_archive_dest_state_7             string      enable
log_archive_dest_state_8             string      enable
log_archive_dest_state_9             string      enable
SYS@orcl> alter system switch logfile;

System altered.

SYS@orcl> ho ls /home/oracle/oracle_system_files_back/archivelog/
1_310_929245147.dbf  _1_311_929245147.arc  _1_312_929245147.arc  
_1_313_929245147.arc
  archivelog_20180305

SYS@orcl> ho ls /u01/app/oracle/fast_recovery_area/ORCL/archivelog/
_1_313_929245147.arc
SYS@orcl>

 

方法二:  alter system set log_archive_dest ='/u01/app/oracle/fast_recovery_area/ORCL/archivelog' ;

SYS@orcl> alter system set log_archive_dest ='/u01/app/oracle/fast_recovery_area/ORCL/archivelog' ;
alter system set log_archive_dest ='/u01/app/oracle/fast_recovery_area/ORCL/archivelog'
*
ERROR at line 1:
ORA-02097: parameter cannot be modified because specified value is invalid
ORA-16018: cannot use LOG_ARCHIVE_DEST with LOG_ARCHIVE_DEST_n or
DB_RECOVERY_FILE_DEST


SYS@orcl> alter system reset log_archive_dest_1;

System altered.

SYS@orcl> alter system reset log_archive_dest_2;

System altered.

SYS@orcl> show  parameter recover ;

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
db_recovery_file_dest                string      /u01/app/oracle/fast_recovery_
                                                 area
db_recovery_file_dest_size           big integer 2G
db_unrecoverable_scn_tracking        boolean     TRUE
recovery_parallelism                 integer     0
SYS@orcl> alter system set db_recovery_file_dest='';

System altered.

SYS@orcl> show  parameter recover ;

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
db_recovery_file_dest                string
db_recovery_file_dest_size           big integer 2G
db_unrecoverable_scn_tracking        boolean     TRUE
recovery_parallelism                 integer     0
SYS@orcl> shutdown immediate;;
SP2-0717: illegal SHUTDOWN option
SYS@orcl> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
SYS@orcl> startup
ORACLE instance started.

Total System Global Area  523108352 bytes
Fixed Size                  1346052 bytes
Variable Size             377488892 bytes
Database Buffers          138412032 bytes
Redo Buffers                5861376 bytes
Database mounted.
Database opened.
SYS@orcl> alter system set log_archive_dest ='/u01/app/oracle/fast_recovery_area/ORCL/archivelog' ;

System altered.

SYS@orcl> alter system switch logfile;

System altered.

SYS@orcl> ho ls /u01/app/oracle/fast_recovery_area/ORCL/archivelog
_1_313_929245147.arc  2016_11_30  2016_12_02  2016_12_08  2017_12_17  2018_02_27  2018_04_24  2018_04_27  2018_04_29  2018_05_20
_1_314_929245147.arc  2016_12_01  2016_12_07  2017_12_16  2017_12_21  2018_04_23  2018_04_26  2018_04_28  2018_04_30

SYS@orcl>
 SYS@orcl>
SYS@orcl> alter system set log_archive_duplex_dest='/home/oracle/oracle_system_files_back/archivelog';

System altered.

SYS@orcl> alter system switch logfile;

System altered.

SYS@orcl> ho ls /u01/app/oracle/fast_recovery_area/ORCL/archivelog
_1_313_929245147.arc  _1_315_929245147.arc  2016_12_01  2016_12_07  2017_12_16  2017_12_21  2018_04_23  2018_04_26  2018_04_28  2018_04_30
_1_314_929245147.arc  2016_11_30            2016_12_02  2016_12_08  2017_12_17  2018_02_27  2018_04_24  2018_04_27  2018_04_29  2018_05_20

SYS@orcl> ho ls /home/oracle/oracle_system_files_back/archivelog
1_310_929245147.dbf  _1_311_929245147.arc  _1_312_929245147.arc  _1_313_929245147.arc  _1_315_929245147.arc  archivelog_20180305

SYS@orcl>
SYS@orcl>

 

        查看归档目的地的相关状态信息

 

SYS@orcl> col dest_name format a20;
SYS@orcl> col destination format a30;
SYS@orcl> select dest_name,status,archiver,destination,log_sequence,reopen_secs,transmit_mode,process from v$archive_dest;

DEST_NAME            STATUS    ARCHIVER   DESTINATION                    LOG_SEQUENCE REOPEN_SECS TRANSMIT_MOD PROCESS
-------------------- --------- ---------- ------------------------------ ------------ ----------- ------------ ----------
LOG_ARCHIVE_DEST_1   VALID     ARCH       USE_DB_RECOVERY_FILE_DEST               319         300 SYNCHRONOUS  ARCH
LOG_ARCHIVE_DEST_2   INACTIVE  ARCH                                                 0           0 SYNCHRONOUS  ARCH
LOG_ARCHIVE_DEST_3   INACTIVE  ARCH                                                 0           0 SYNCHRONOUS  ARCH
LOG_ARCHIVE_DEST_4   INACTIVE  ARCH                                                 0           0 SYNCHRONOUS  ARCH
LOG_ARCHIVE_DEST_5   INACTIVE  ARCH                                                 0           0 SYNCHRONOUS  ARCH
LOG_ARCHIVE_DEST_6   INACTIVE  ARCH                                                 0           0 SYNCHRONOUS  ARCH
LOG_ARCHIVE_DEST_7   INACTIVE  ARCH                                                 0           0 SYNCHRONOUS  ARCH
LOG_ARCHIVE_DEST_8   INACTIVE  ARCH                                                 0           0 SYNCHRONOUS  ARCH
LOG_ARCHIVE_DEST_9   INACTIVE  ARCH                                                 0           0 SYNCHRONOUS  ARCH
LOG_ARCHIVE_DEST_10  INACTIVE  ARCH                                                 0           0 SYNCHRONOUS  ARCH
LOG_ARCHIVE_DEST_11  INACTIVE  ARCH                                                 0           0 SYNCHRONOUS  ARCH

DEST_NAME            STATUS    ARCHIVER   DESTINATION                    LOG_SEQUENCE REOPEN_SECS TRANSMIT_MOD PROCESS
-------------------- --------- ---------- ------------------------------ ------------ ----------- ------------ ----------
LOG_ARCHIVE_DEST_12  INACTIVE  ARCH                                                 0           0 SYNCHRONOUS  ARCH
LOG_ARCHIVE_DEST_13  INACTIVE  ARCH                                                 0           0 SYNCHRONOUS  ARCH
LOG_ARCHIVE_DEST_14  INACTIVE  ARCH                                                 0           0 SYNCHRONOUS  ARCH
LOG_ARCHIVE_DEST_15  INACTIVE  ARCH                                                 0           0 SYNCHRONOUS  ARCH
LOG_ARCHIVE_DEST_16  INACTIVE  ARCH                                                 0           0 SYNCHRONOUS  ARCH
LOG_ARCHIVE_DEST_17  INACTIVE  ARCH                                                 0           0 SYNCHRONOUS  ARCH
LOG_ARCHIVE_DEST_18  INACTIVE  ARCH                                                 0           0 SYNCHRONOUS  ARCH
LOG_ARCHIVE_DEST_19  INACTIVE  ARCH                                                 0           0 SYNCHRONOUS  ARCH
LOG_ARCHIVE_DEST_20  INACTIVE  ARCH                                                 0           0 SYNCHRONOUS  ARCH
LOG_ARCHIVE_DEST_21  INACTIVE  ARCH                                                 0           0 SYNCHRONOUS  ARCH
LOG_ARCHIVE_DEST_22  INACTIVE  ARCH                                                 0           0 SYNCHRONOUS  ARCH

DEST_NAME            STATUS    ARCHIVER   DESTINATION                    LOG_SEQUENCE REOPEN_SECS TRANSMIT_MOD PROCESS
-------------------- --------- ---------- ------------------------------ ------------ ----------- ------------ ----------
LOG_ARCHIVE_DEST_23  INACTIVE  ARCH                                                 0           0 SYNCHRONOUS  ARCH
LOG_ARCHIVE_DEST_24  INACTIVE  ARCH                                                 0           0 SYNCHRONOUS  ARCH
LOG_ARCHIVE_DEST_25  INACTIVE  ARCH                                                 0           0 SYNCHRONOUS  ARCH
LOG_ARCHIVE_DEST_26  INACTIVE  ARCH                                                 0           0 SYNCHRONOUS  ARCH
LOG_ARCHIVE_DEST_27  INACTIVE  ARCH                                                 0           0 SYNCHRONOUS  ARCH
LOG_ARCHIVE_DEST_28  INACTIVE  ARCH                                                 0           0 SYNCHRONOUS  ARCH
LOG_ARCHIVE_DEST_29  INACTIVE  ARCH                                                 0           0 SYNCHRONOUS  ARCH
LOG_ARCHIVE_DEST_30  INACTIVE  ARCH                                                 0           0 SYNCHRONOUS  ARCH
LOG_ARCHIVE_DEST_31  INACTIVE  ARCH                                                 0           0 SYNCHRONOUS  ARCH

31 rows selected.

SYS@orcl>

 

        停用 log_archive_dest_state_2

 

---停用
SYS@orcl> alter system set log_archive_dest_state_2=defer;

System altered.

SYS@orcl> show parameter log_archive_dest_state_2;

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
log_archive_dest_state_2             string      DEFER ---该路径显示为 defer 停用状态
log_archive_dest_state_20            string      enable
log_archive_dest_state_21            string      enable
log_archive_dest_state_22            string      enable
log_archive_dest_state_23            string      enable
log_archive_dest_state_24            string      enable
log_archive_dest_state_25            string      enable
log_archive_dest_state_26            string      enable
log_archive_dest_state_27            string      enable
log_archive_dest_state_28            string      enable
log_archive_dest_state_29            string      enable
--启用 
SYS@orcl> alter system set log_archive_dest_state_2=enable;

System altered.

SYS@orcl> show parameter log_archive_dest_state_2;

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
log_archive_dest_state_2             string      ENABLE
log_archive_dest_state_20            string      enable
log_archive_dest_state_21            string      enable
log_archive_dest_state_22            string      enable
log_archive_dest_state_23            string      enable
log_archive_dest_state_24            string      enable
log_archive_dest_state_25            string      enable
log_archive_dest_state_26            string      enable
log_archive_dest_state_27            string      enable
log_archive_dest_state_28            string      enable
log_archive_dest_state_29            string      enable
SYS@orcl>

 

        手动归档:

 

SYS@orcl> alter system archive log current;

System altered.

 

 

        闪回恢复区的开启和关闭:

---查看闪回恢复区信息
SYS@orcl> show parameter recover;

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
db_recovery_file_dest                string                            ---设置闪回恢复区的目录
db_recovery_file_dest_size           big integer 2G                    ---设置闪回恢复区的大小
db_unrecoverable_scn_tracking        boolean     TRUE
recovery_parallelism                 integer     0
SYS@orcl>

          启用闪回恢复区

 SYS@orcl>
SYS@orcl> show parameter recover;

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
db_recovery_file_dest                string
db_recovery_file_dest_size           big integer 2G
db_unrecoverable_scn_tracking        boolean     TRUE
recovery_parallelism                 integer     0
SYS@orcl> ho ls /u01/app/oracle/fast_recovery_area/
orcl  ORCL

SYS@orcl> ho ls /u01/app/oracle/fast_recovery_area/ORCL
archivelog  onlinelog

SYS@orcl> ho mkdir /u01/app/oracle/fast_recovery_area/ORCL/db_recovery_file_dest

SYS@orcl> ho ls /u01/app/oracle/fast_recovery_area/ORCL
archivelog  db_recovery_file_dest  onlinelog

SYS@orcl> alter system reset log_archive_duplex_dest;

System altered.

SYS@orcl> alter system reset log_archive_dest;

System altered.

SYS@orcl> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
SYS@orcl> startup
ORACLE instance started.

Total System Global Area  523108352 bytes
Fixed Size                  1346052 bytes
Variable Size             377488892 bytes
Database Buffers          138412032 bytes
Redo Buffers                5861376 bytes
Database mounted.
Database opened.
SYS@orcl> show parameter recover;

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
db_recovery_file_dest                string
db_recovery_file_dest_size           big integer 2G
db_unrecoverable_scn_tracking        boolean     TRUE
recovery_parallelism                 integer     0
SYS@orcl> alter system set db_recovery_file_dest_size=3G;

System altered.

SYS@orcl> alter system set db_recovery_file_dest='/u01/app/oracle/fast_recovery_area/ORCL/db_recovery_file_dest';

System altered.

SYS@orcl> show parameter recover;

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
db_recovery_file_dest                string      /u01/app/oracle/fast_recovery_
                                                 area/ORCL/db_recovery_file_des
                                                 t
db_recovery_file_dest_size           big integer 3G
db_unrecoverable_scn_tracking        boolean     TRUE
recovery_parallelism                 integer     0
SYS@orcl>

 

       开启归档日志模式

---开启归档日志:

----1:关闭数据库
SYS@orcl> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.

---开启数据库到 mount状态
SYS@orcl> startup mount;
ORACLE instance started.

Total System Global Area  523108352 bytes
Fixed Size                  1346052 bytes
Variable Size             377488892 bytes
Database Buffers          138412032 bytes
Redo Buffers                5861376 bytes
Database mounted.
---开启 归档日志模式
SYS@orcl> alter database archivelog;

Database altered.
---打开数据库
SYS@orcl> alter database open;

Database altered.

SYS@orcl>


SYS@orcl> ho ps -ef |grep ora_ |grep arc
oracle    4171     1  0 22:01 ?        00:00:00 ora_arc0_orcl
oracle    4173     1  0 22:01 ?        00:00:00 ora_arc1_orcl
oracle    4176     1  0 22:01 ?        00:00:00 ora_arc2_orcl
oracle    4178     1  0 22:01 ?        00:00:00 ora_arc3_orcl
oracle    4217  5559  0 22:03 pts/2    00:00:00 /bin/bash -c ps -ef |grep ora_ |grep arc

SYS@orcl>



       关闭归档日志模式


----切换为非归档日志模式

--关闭数据库
SYS@orcl> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
--开启数据库到 mount状态
SYS@orcl> startup mount;
ORACLE instance started.

Total System Global Area  523108352 bytes
Fixed Size                  1346052 bytes
Variable Size             377488892 bytes
Database Buffers          138412032 bytes
Redo Buffers                5861376 bytes
Database mounted.
---切换数据库到非归档日志模式
SYS@orcl> alter database noarchivelog;

Database altered.
--打开数据库 
SYS@orcl> alter database open;

Database altered.
--查看归档日志信息
SYS@orcl> archive log list;
Database log mode              No Archive Mode
Automatic archival             Disabled
Archive destination            USE_DB_RECOVERY_FILE_DEST
Oldest online log sequence     307
Current log sequence           310
SYS@orcl>



        执行手工归档


--对当前的日志进行归档
SYS@orcl> alter system archive log current;

System altered.

SYS@orcl>


利用归档恢复过程

imageimage

image

image


image


image


image


image







————————————————————————————————————————————————————————————————

原文地址:https://www.cnblogs.com/ios9/p/9039875.html