Oracle中临时表空间

临时表空间作为排序操作使用。当用户的sql语句使用了order by,group by子句时,Oracle服务器就需要对所选取的数据进行排序。
这时如果排序的数据量很大,那么,此时内存的排序区(PGA中)就可能装不下,因此,Oracle服务器就要把一些中间的排序结果写到磁盘上,即临时表空间中。当用户的sql语句中经常有大规模的排序而内存的排序区不够时,使用临时表空间就可以改进数据库的效率。
   临时表空间可以由多个用户共享,在其中不能包含任何永久对象。临时表空间中的排序段是在实例启动后当有第一个排序操作时创建的,排序段在需要时可以通过分配extents来扩展,并一直可以扩展到大于或等于在该实例上所运行的所有排序活动的总和。
   当创建临时表空间时,必须使用标准数据块。另外Oracel推荐使用本地管理的表空间
例如:创建一个临时表空间,longshen_temp
1.查询当前数据库有多少表空间及每个表空间的状态和类型
SQL> select tablespace_name,status,contents from dba_tablespaces;

TABLESPACE STATUS    CONTENTS
---------- --------- ---------
SYSTEM     ONLINE    PERMANENT
UNDOTBS1   ONLINE    UNDO
SYSAUX     ONLINE    PERMANENT
TEMP       ONLINE    TEMPORARY
USERS      ONLINE    PERMANENT
TEST       ONLINE    PERMANENT
LONGSHEN   ONLINE    PERMANENT
LONGSHEN_U ONLINE    UNDO
NDO

2.查看temp临时表空间的文件
SQL> select f.file#,t.ts#,f.name,t.name from v$tempfile f,v$tablespace t
  2  where f.ts#=t.ts#;

3.创建一个临时表空间longshen_temp

SQL> create temporary tablespace longshen_temp
  2  tempfile '/oradata/law/law/longshen_temp.dbf' size 10m
  3  extent management local
  4  uniform size 2m;

Tablespace created.

4.查询是否创建成功

SQL> select tablespace_name,status,contents from dba_tablespaces
  2  where tablespace_name like 'LONG%';

TABLESPACE STATUS    CONTENTS
---------- --------- ---------
LONGSHEN   ONLINE    PERMANENT
LONGSHEN_T ONLINE    TEMPORARY
EMP

LONGSHEN_U ONLINE    UNDO
NDO

SQL> select f.file#,t.ts#,f.name,t.name from v$tempfile f,v$tablespace t
  2  where f.ts#=t.ts#;

FILE# TS# NAME                     NAME
----- --- ------------------------ ------------------------
    1   3 /oradata/law/law/temp01. TEMP
          dbf

    2   9 /oradata/law/law/longshe LONGSHEN_TEMP
          n_temp.dbf


5.查询longshen_temp表空间的参数设置

SQL> select tablespace_name,block_size,extent_management,segment_space_management,min_extlen from dba_tablespaces where tablespace_name like 'LONG%';

TABLESPACE BLOCK_SIZE EXTENT_MAN SEGMEN MIN_EXTLEN
---------- ---------- ---------- ------ ----------
LONGSHEN         8192 LOCAL      AUTO      1048576
LONGSHEN_T       8192 LOCAL      MANUAL    2097152
EMP

LONGSHEN_U       8192 LOCAL      MANUAL      65536
NDO

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值