在一个临时表空间 组中,用户可以定义很多临时表 空间。一个临时表空间组包含至少一个临时表空间,但是没有包含最大个临时表空间个数。注意,临时表空间组的名子和临时表空间的名字必须不相同,不然会出现错误。任何临时表空间都可以 在一个临时 表空间中添加、删除甚至 移动到其他临时表空间组中。
临时表空间的好处:
1)可以避免在sql查询排序的时候导致的表空间不足的情况,避免hold这个结果,尤其是在 分区表中。
2)当一个用户使用多个会话登录 的时候,可以使用不同的临时表空间来提高响应性能。
3)一个并行操作一个并行服务将有力的利用临时表空间组 。
一)创建临时表空间组:
SQL> select file_name,tablespace_name from dba_temp_files;
FILE_NAME TABLESPACE_NAME
------------------------------------------------------------ ------------------------------
/opt/app/oracle/RHYS/temp01.dbf TEMP
/opt/app/oracle/RHYS/temp02.dbf TEMP02
SQL>
create temporary tablespace temp03 tempfile
'/opt/app/oracle/RHYS/temp03.dbf' size 20M autoextend off tablespace
group temp_group01;
Tablespace created.
SQL>
SQL> select * from dba_tablespace_groups;
GROUP_NAME TABLESPACE_NAME
------------------------------ ------------------------------
TEMP_GROUP01 TEMP03
SQL>
二)把临时表空间加入临时表空间组
SQL> alter tablespace temp tablespace group temp_group01;
Tablespace altered.
SQL> select * from dba_tablespace_groups;
GROUP_NAME TABLESPACE_NAME
------------------------------ ------------------------------
TEMP_GROUP01 TEMP
TEMP_GROUP01 TEMP03
SQL> alter tablespace temp02 tablespace group temp_group01;
Tablespace altered
SQL>
SQL> select * from dba_tablespace_groups;
GROUP_NAME TABLESPACE_NAME
------------------------------ ------------------------------
TEMP_GROUP01 TEMP
TEMP_GROUP01 TEMP02
TEMP_GROUP01 TEMP03

网友评论