过着简单,真实的生活,喜欢收藏变形金刚(TFE,G1,SL系列),研究金融股市,KOF98,篮球,学习研究Oracle技术,我并不是一个全职的Oracle DBA,但是对于Oracle技术的热爱和研究,是一个不争的事实,愿意结交广大Oracle技术爱好者!MSN:oracle_kof_tf@hotmail.com

Oracle9i中的临时表空间的重建和切换

上一篇 / 下一篇  2007-12-20 14:10:18 / 个人分类:Oracle数据库技术-数据库管理

Oracle9i为我们提供了一个全局的临时表空间。有的时候我们会发现在做了大量的排序操作后,temp表空间并没有去释放,而且在更大的程度上面占用了我们的磁盘空间,其实我们可以通过重建或者切换的手段来使我们的temp表空间得到重生。

首先我们可以先看一下,当前用户所属的临时表空间有那些
SQL> select username ,temporary_tablespace from dba_users;

USERNAME                       TEMPORARY_TABLESPACE
------------------------------ ------------------------------
SYS                            TEMP1
SYSTEM                         TEMP1
DBSNMP                         TEMP1
HUJINPEI                       TEMP1
ALAN1                          TEMP1
PERFUSER                       TEMP1
ALAN2                          TEMP1
MYUSER                         TEMP1
OUTLN                          TEMP1
WMSYS                          TEMP1

已选择10行。

查看当前有那些临时文件
SQL> select name from v$tempfile;

NAME
--------------------------------------------------------------------------------
D:\ORACLE\ORADATA\ICMNLSDB\TEMP1_01.DBF
D:\ORACLE\ORADATA\ICMNLSDB\TEMP1_02.DBF

为了切换这个临时文件,我们可以重新建立一个临时表空间
SQL> create temporary tablespace temp
  2  tempfile 'D:\ORACLE\ORADATA\ICMNLSDB\TEMP01.DBF' size 10M ;

表空间已创建。

SQL> alter tablespace temp add tempfile 'D:\ORACLE\ORADATA\ICMNLSDB\TEMP02.DBF' size 10M;

表空间已更改。

这个时候我们就可以将刚刚建好的TEMP表空间设置为我们数据库默认的临时表空间:
SQL> alter database default temporary tablespace temp;

数据库已更改。

SQL> select username,temporary_tablespace from dba_users;

USERNAME                       TEMPORARY_TABLESPACE
------------------------------ ---------------------------
SYS                            TEMP
SYSTEM                         TEMP
DBSNMP                         TEMP
HUJINPEI                       TEMP
ALAN1                          TEMP
PERFUSER                       TEMP
ALAN2                          TEMP
MYUSER                         TEMP
OUTLN                          TEMP
WMSYS                          TEMP

已选择10行。

当然我们还可以选择DROP掉以前旧的TEMP1的表空间
SQL> drop tablespace temp1 including contents ;

表空间已丢弃。


TAG:

 

评分:0

我来说两句

显示全部

:loveliness: :handshake :victory: :funk: :time: :kiss: :call: :hug: :lol :'( :Q :L ;P :$ :P :o :@ :D :( :)

Open Toolbar