日期:2014-05-16 浏览次数:20405 次
临时表空间是一个磁盘空间,主要用于存储用户在执行order by等语句进行排序或者汇总是产生的临时数据。 默认情况下,所有用户都使用temp作为默认临时表空间。但是也容许使用其它临时表空间作为默认临时表空间,则需要在创建用户时进行指定。
创建临时表空间需要使用temporary关键字,并且与临时表空间对应的是临时文件,由tempfile关键字指定,也就是说,临时表空间中不再使用数据文件,而是使用临时文件. SQL> create temporary tablespace temspace 2 tempfile 'D:\app\SQLTest\Self\tem.dbf' 3 size 5M autoextend on next 2M maxsize 20M 4 / 表空间已创建。 SQL>
临时表空间的修改。 由于临时文件中不存储永久性数据,之存储排序等操作过程中产生的临时数据, 并且在用户操作结束后,临时文件中存储的数据有系统删除,所以一般情况下不需要要调整临时表空间。 但是当并发用户特别多,并且操作比较复杂时,可以能会发生临时表空间不足。 这时,dba可以增加临时文件来增大临时表空间。 a. 如果要增加临时文件,可以使用add tempfile 子句。 b. 如果需要修改临时巍峨见的大小,可以使用resize关键字。 c. 还可以修改临时文件的状态为offline/online.
SQL> column name format a50; SQL> select file#,status,name from v$tempfile; FILE# STATUS NAME ---------- ------- ------------------------------------------------ 1 ONLINE D:\APP\JGWANG\ORADATA\ORCL\TEMP01.DBF 2 ONLINE D:\APP\SQLTEST\SELF\TEM.DBF SQL> alter tablespace temspace 2 add tempfile 'D:\app\SQLTest\Self\tem02.dbf' 3 size 5M; 表空间已更改。 SQL> select file#,status,name from v$tempfile; FILE# STATUS NAME ---------- ------- ---------------------------------------------- 1 ONLINE D:\APP\JGWANG\ORADATA\ORCL\TEMP01.DBF 2 ONLINE D:\APP\SQLTEST\SELF\TEM.DBF 3 ONLINE D:\APP\SQLTEST\SELF\TEM02.DBF SQL>