减少临时表使用空间的几种方法

文章作者 100test 发表时间 2007:05:18 10:59:00
来源 100Test.Com百考试题网


1、 第一种方式,直接resize tempfile , 虽然简单,但是很容易无效

sys@mescp> 0select tablespace_name,file_name ,2 file_id,bytes/1024/1024 as "size(M)"3 from dba_temp_files4 /TABLESPACE_NAME FILE_NAME FILE_ID size(M)-------------------- ---------------------------------- ---------- ----------TEMP /orabin/oradata/mescp/temp01.dbf 1 1024TEMP /orabin/oradata/mescp/tmp1_01.dbf 2 40962 rows 0selected.sys@mescp> alter database tempfile 1 resize 16M.alter database tempfile 1 resize 16M*ERROR at line 1:ORA-03297: file contains used data beyond requested RESIZE value-- 失败了

  2、第二种,建立另一个临时表空间,并把它设为default temporary tablespace,再删除原来的temporary tablespace以及tempfile。


  需要切换,复杂了点……

  3、我提供的方式

sys@mescp> alter database tempfile 1 0drop .Database altered.sys@mescp> alter tablespace temp add tempfile2 /orabin/oradata/mescp/temp01.dbf3 size 16M reuse autoextend on next 16M maxsize 4096M.Tablespace altered.sys@mescp> alter database tempfile 2 0drop .Database altered.sys@mescp> alter tablespace temp add tempfile2 /orabin/oradata/mescp/tmp1_01.dbf3sys@mescp> 3 size 16M reuse autoextend on next 16M maxsize 4096M.sys@mescp> /Tablespace altered.sys@mescp> 0select tablespace_name,file_name ,2 file_id,bytes/1024/1024 as "size(M)"3 from dba_temp_files4 /TABLESPACE_NAME FILE_NAME FILE_ID size(M)-------------------- ---------------------------------- ---------- ----------TEMP /orabin/oradata/mescp/temp01.dbf 1 16TEMP /orabin/oradata/mescp/tmp1_01.dbf 2 162 rows 0selected.

  无需重新建立temporary tablespace,无需修改database的default temporary tablespace



相关文章


oracle数据库中关于null排序的问题
减少临时表使用空间的几种方法
Oracle的db_name和instance_name
2005年计算机软件资格考试的备考要略
澳大利亚华人论坛
考好网
日本华人论坛
华人移民留学论坛
英国华人论坛