临时表空间的管理与受损恢复

发表于:2013-6-17 09:14

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:RobinsonCheng    来源:51Testing软件测试网采编

  Oracle 临时表空间是Oracle数据库的重要组成部分,尽管该部分并没有cont体系结构上得以展现,但其重要地位也是不容忽视的。尤其是对于大型的频繁操作,如创建索引,排序等等都需要在临时表空间完成来减少内存的开销。当然对于查询性能要求较高的应尽可能的避免在磁盘上完成这些操作。本文主要描述的是临时表空间的管理与受损恢复。

  一、临时表空间的特性与注意事项

  1、特性

  用户存储临时数据的表空间

  临时数据通常只在一个数据库会话期间内存在的数据,分为两种形式,排序数据和全局临时表

  临时数据不会被写入存储永久对象的普通表空间内,而是存储在临时表空间的临时段中

  临时表空间临时性导致不需要备份该类型的表空间,RMAN也不支持对临时表空间的备份

  对于临时数据的处理,不会生成重做,也不会生成撤销数据

  临时表空间的数据文件不能置为只读、不能重命名

  监时表空间的数据文件的日志方式总是NOLOGGING

  使用临时表空间的主要操作

  CREATE INDEX,ALTER INDEX ...REBUILD,ORDER BY,GROUP BY,DISTINCT,UNION,INTERSECT,MINUS,SORT-MERGER,JOIN,ANALYZE

  2、临时表空间使用的注意事项

  a)每个用户都有一个缺省的临时表空间,对于临时表空间使用较高的系统,建议将临时表空间数据文件分布到不同的磁盘

  b)对于大型操作频繁,(大型查询,大型分类查询,大型统计分析等),应指定单独的临时表空间,以方便管理

  c)分配用户单独临时表空间,一般是针对大型产品数据库,OLTP数据库,数据库仓库

  d)对于小型产品不需要单独制定临时表空间,使用默认临时表空间

  e)对于临时表空间建议关闭自动扩展功能,避免过度扩展所致的空间压力

  二、临时表空间的管理

  1、查看缺省的临时表空间

SQL> select property_name,property_value from database_properties      
  2  where property_name like 'DEFAULT%';                              
                                                                       
PROPERTY_NAME                  PROPERTY_VALUE                          
------------------------------ --------------------------------        
DEFAULT_TEMP_TABLESPACE        TEMP                                    
DEFAULT_PERMANENT_TABLESPACE   USERS                                   
DEFAULT_TBS_TYPE               SMALLFILE                               

  2、查看临时表空间的大小及位置

SQL> select s.name tbsname,t.name,(t.bytes/1024/1024) bytes,status                     
  2  from v$tablespace s,v$tempfile t                                                  
  3  where s.ts# = t.ts#;                                                              
                                                                                       
TBSNAME    NAME                                               BYTES   STATUS           
---------- --------------------------------------------- ----------   -------          
TEMP       /u01/app/oracle/oradata/orcl/temp01.dbf               30   ONLINE           
                                                                                       
SQL> select tablespace_name,file_name,bytes/1024/1024 Size_MB from dba_temp_files;     
                                                                                       
TABLESPACE FILE_NAME                                        SIZE_MB                    
---------- --------------------------------------------- ----------                    
TEMP       /u01/app/oracle/oradata/orcl/temp01.dbf               30                    
                                                                                       
SQL> select tablespace_name,logging,allocation_type                                    
  2  from dba_tablespaces where tablespace_name='TEMP';                                
                                                                                       
TABLESPACE LOGGING   ALLOCATIO                                                         
---------- --------- ---------                                                         
TEMP       NOLOGGING UNIFORM                                                           

31/3123>
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号