该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
【问题】数据库临时表空间占用空间太大,暂用大量磁盘空间。
【处理】清空临时表空间
Oracle1.启动数据库 startup
2.查看当前的数据库默认表空间:
SQL>select * from database_properties whereproperty_name='DEFAULT_TEMP_TABLESPACE';
确认当前的临时表空间为TEMP
3.查看目前临时表空间的大小:
SQL>select file_name,tablespace_name,bytes/1024/1024"MB",autoextensible from dba_temp_files;
4.创建另一个临时表空间
SQL>create temporary tablespace TEMP2 TEMPFILE'D:\app\Administrator\oradata\orcl\temp02.dbf' SIZE 10M REUSE AUTOEXTEND ON NEXT 1MMAXSIZE UNLIMITED;
5.改变缺省临时表空间为刚刚创建的新临时表空间temp2
SQL>alter database default temporary tablespace temp2;
6.删除原来临时表空间
SQL>drop tablespace temp including contents and datafiles;
7.重新创建临时表空间temp
SQL>create temporary tablespace TEMP TEMPFILE'D:\app\Administrator\oradata\orcl\temp01.dbf' SIZE 512M REUSE AUTOEXTEND ON NEXT 1MMAXSIZE UNLIMITED;
8.重置缺省临时表空间为新建的temp表空间
SQL>alter database default temporary tablespace temp;
9.删除中转用临时表空间
SQL>drop tablespace temp2 including contents and datafiles;
10.重新指定用户表空间为重建的临时表空间
SQL>alter user scott temporary tablespace temp;