临时表空间相关知识点总结

原创|其它|编辑:郝浩|2010-03-30 13:43:44.000|阅读 605 次

概述:临时表空间主要用途是在数据库进行排序运算[如创建索引、order by及group by、distinct、union/intersect/minus/、sort-merge及join、analyze命令]、管理索引[如创建索引、IMP进行数据导入]、访问视图等操作时提供临时的运算空间,当运算完成之后系统会自动清理。本文将对临时表空间相关知识点进行总结。

# 界面/图表报表/文档/IDE等千款热门软控件火热销售中 >>

临时表空间的作用:

  临时表空间主要用途是在数据库进行排序运算[如创建索引、order by及group by、distinct、union/intersect/minus/、sort-merge及join、analyze命令]、管理索引[如创建索引、IMP进行数据导入]、访问视图等操作时提供临时的运算空间,当运算完成之后系统会自动清理。

  当临时表空间不足时,表现为运算速度异常的慢,并且临时表空间迅速增长到最大空间(扩展的极限),并且一般不会自动清理了。

  如果临时表空间没有设置为自动扩展,则临时表空间不够时事务执行将会报ora-01652无法扩展临时段的错误,当然解决方法也很简单:1、设置临时数据文件自动扩展,或者2、增大临时表空间。

  临时表空间的相关操作:

  查询默认临时表空间:

  SQL> select * from database_properties where property_name='DEFAULT_TEMP_TABLESPACE';

  PROPERTY_NAME

  ------------------------------

  PROPERTY_VALUE

  --------------------------------------------------------------------------------

  DESCRIPTION

  --------------------------------------------------------------------------------

  DEFAULT_TEMP_TABLESPACE

  TEMP

  Name of default temporary tablespace

  查询临时表空间状态:

  SQL> select tablespace_name,file_name,bytes/1024/1024 file_size,autoextensible from dba_temp_files;

  TABLESPACE_NAME

  ——————————

  FILE_NAME

  ——————————————————————————–

  FILE_SIZE AUT

  ———- —

  TEMP

  /u01/app/oracle/oradata/orcl/temp01.dbf

  100 YES

  扩展临时表空间:

  方法一、增大临时文件大小:

  SQL> alter database tempfile ‘/u01/app/oracle/oradata/orcl/temp01.dbf’ resize 100m;

  Database altered.

  方法二、将临时数据文件设为自动扩展:

  SQL> alter database tempfile ‘/u01/app/oracle/oradata/orcl/temp01.dbf’ autoextend on next 5m maxsize unlimited;

  Database altered.

  方法三、向临时表空间中添加数据文件:

  SQL> alter tablespace temp add tempfile ‘/u01/app/oracle/oradata/orcl/temp02.dbf’ size 100m;

  Tablespace altered.

  删除临时表空间的一个数据文件:

  SQL> alter database tempfile '/u01/app/oracle/oradata/orcl/temp02.dbf' drop;

  Database altered.

  删除临时表空间(彻底删除):

  SQL> drop tablespace temp1 including contents and datafiles cascade constraints;

  Tablespace dropped.

  创建临时表空间:

  SQL> create temporary tablespace temp1 tempfile '/u01/app/oracle/oradata/orcl/temp11.dbf' size 10M;

  Tablespace created.

  更改系统的默认临时表空间:

  SQL> alter database default temporary tablespace temp1;

  Database altered.

所有用户的默认临时表空间都将切换为新的临时表空间:

  SQL> select username,temporary_tablespace,default_ from dba_users;

  USERNAME TEMPORARY_TABLESPACE

  ------------------------------ ------------------------------

  MGMT_VIEW TEMP1

  SYS TEMP1

  SYSTEM TEMP1

  DBSNMP TEMP1

  SYSMAN TEMP1

  SCOTT TEMP1

  OUTLN TEMP1

  MDSYS TEMP1

  ORDSYS TEMP1

  EXFSYS TEMP1

  DMSYS TEMP1

  USERNAME TEMPORARY_TABLESPACE

  ------------------------------ ------------------------------

  WMSYS TEMP1

  CTXSYS TEMP1

  ANONYMOUS TEMP1

  XDB TEMP1

  ORDPLUGINS TEMP1

  SI_INFORMTN_SCHEMA TEMP1

  OLAPSYS TEMP1

  ORACLE_OCM TEMP1

  TSMSYS TEMP1

  BI TEMP1

  PM TEMP1

  更改某一用户的临时表空间:

  SQL> alter user scott temporary tablespace temp;

  User altered.

  SQL> select username,temporary_tablespace from dba_users;

  USERNAME TEMPORARY_TABLESPACE

  ------------------------------ ------------------------------

  MGMT_VIEW TEMP1

  SYS TEMP1

  SYSTEM TEMP1

  DBSNMP TEMP1

  SYSMAN TEMP1

  SCOTT TEMP

  OUTLN TEMP1

  MDSYS TEMP1

  ORDSYS TEMP1

  EXFSYS TEMP1

  DMSYS TEMP1

  USERNAME TEMPORARY_TABLESPACE

  ------------------------------ ------------------------------

  WMSYS TEMP1

  CTXSYS TEMP1

  ANONYMOUS TEMP1

  XDB TEMP1

  ORDPLUGINS TEMP1

  SI_INFORMTN_SCHEMA TEMP1

  OLAPSYS TEMP1

  ORACLE_OCM TEMP1

  TSMSYS TEMP1

  BI TEMP1

  PM TEMP1

  USERNAME TEMPORARY_TABLESPACE

  ------------------------------ ------------------------------

  MDDATA TEMP1

  IX TEMP1

  SH TEMP1

  DIP TEMP1

  OE TEMP1

  HR TEMP1

  28 rows selected.

  -EOF-


标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@evget.com

文章转载自:网络转载

为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
扫码咨询


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP