创建用户时,应该给用户指定一个临时表空间,用户的排序段存放在该表空间。如果没有给用户指定临时表空间,oracle会自动给这个用户指定一个临时表空间,这个临时表空间叫做默认临时表空间。

如果系统表空间是本地管理的,则必须定义一个默认的临时表空间,SYSTEM表空间不能作为默认临时表空间;

如果系统表空间是字典管理的,则不必定义一个默认临时表空间,SYSTEM表空间可以作为默认临时表空间,但是,一旦用户使用SYSTEM表空间进行排序,oracle将会faculty警告。从性能的角度考虑,不应该把SYSTEM表空间作为临时表空间。

修改默认临时表空间

alter database default temporary tablespace tablespace_name;

找出默认临时表空间

SQL> select property_name,property_value from database_properties where property_name='DEFAULT_TEMP_TABLESPACE';

PROPERTY_NAME
------------------------------------------------------------------------------------------------------------------------
PROPERTY_VALUE
------------------------------------------------------------------------------------------------------------------------------------------------------
DEFAULT_TEMP_TABLESPACE
TEMP