知识大全 Oracle回滚段空间回收步骤

Posted 空间

篇首语:一卷旌收千骑虏,万全身出百重围。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 Oracle回滚段空间回收步骤相关的知识,希望对你有一定的参考价值。

Oracle回滚段空间回收步骤  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

  是谁 偷偷的 用了那么多空间呢(本来有几十个G的Free磁盘空间的)?

  检查数据库表空间占用空间情况:

  SQL> select tablespace_name sum(bytes)/ / / GB

   from dba_data_files group by tablespace_name

   union all

   select tablespace_name sum(bytes)/ / / GB

   from dba_temp_files group by tablespace_name order by GB;

  TABLESPACE_NAME                        GB

  

  USERS                         

  UNDOTBS                        

  SYSTEM                        

  SYSAUX                        

  WAPCM_TS_VISIT_DETAIL           

  HY_DS_DEFAULT                          

  MINT_TS_DEFAULT                        

  MMS_TS_DATA                        

  MMS_IDX_SJH                            

  MMS_TS_DEFAULT                         

  IVRCN_TS_DATA                          

  TABLESPACE_NAME                        GB

  

  MMS_TS_DATA                            

  CM_TS_DEFAULT                          

  TEMP                          

  UNDOTBS                       

   rows selected

  不幸的发现 UNDO表空间已经扩展至 G 而TEMP表空间也扩展至 G 这 个表空间加起来占用了 G的磁盘空间 导致了空间不足

  显然曾经有大事务占用了大量的UNDO表空间和Temp表空间 Oracle的AUM(Auto Undo Management)从出生以来就经常出现只扩展 不收缩(shrink)的情况(通常我们可以设置足够的UNDO表空间大小 然后取消其自动扩展属性)

  现在我们可以采用如下步骤回收UNDO空间:

   确认文件

  SQL> select file_name bytes/ / from dba_data_files

   where tablespace_name like UNDOTBS ;

  FILE_NAME

  

  BYTES/ /

  

  +ORADG/danaly/datafile/undotbs

  

   检查UNDO Segment状态

  SQL> select usn xacts rssize/ / / hwmsize/ / / shrinks

   from v$rollstat order by rssize;

  USN      XACTS RSSIZE/ / / HWMSIZE/ / /     SHRINKS

  

                                               

                                               

                                                 

                                               

                                               

                                               

                                               

                                               

                                               

                                               

                                                 

   rows selected

   创建新的UNDO表空间

  SQL> create undo tablespace undotbs ;

  Tablespace created

   切换UNDO表空间为新的UNDO表空间

  SQL> alter system set undo_tablespace=undotbs scope=both;

  System altered

  此处使用spfile需要注意 以前曾经记录过这样一个案例:Oracle诊断案例 Spfile案例一则

   等待原UNDO表空间所有UNDO SEGMENT OFFLINE

  SQL> select usn xacts status rssize/ / / hwmsize/ / / shrinks

   from v$rollstat order by rssize;

  USN      XACTS STATUS          RSSIZE/ / / HWMSIZE/ / /     SHRINKS

  

             ONLINE                                           

             ONLINE                                           

             ONLINE                                           

             ONLINE                                           

             ONLINE                                           

             ONLINE                                           

             ONLINE                                           

             ONLINE                                           

             ONLINE                                           

             ONLINE                                           

             ONLINE                                           

  USN      XACTS STATUS          RSSIZE/ / / HWMSIZE/ / /     SHRINKS

  

             PENDING OFFLINE                                    

   rows selected

  再看:

   : : SQL> /

  USN      XACTS STATUS          RSSIZE/ / / HWMSIZE/ / /     SHRINKS

  

             ONLINE                                           

             ONLINE                                           

             ONLINE                                           

             ONLINE                                           

             ONLINE                                           

             ONLINE                                           

             ONLINE                                           

             ONLINE                                           

             ONLINE                                           

             ONLINE                                           

             ONLINE                                           

   rows selected

  Elapsed: : :

   删除原UNDO表空间

   : : SQL> drop tablespace undotbs including contents;

  Tablespace dropped

  Elapsed: : :

   检查空间情况

  由于我使用的ASM管理 可以使用 gR 提供的信工具asmcmd来察看空间占用情况

  [oracle@danaly ~]$ export ORACLE_SID=+ASM

  [oracle@danaly ~]$ asmcmd

  ASMCMD> du

  Used_MB      Mirror_used_MB

                 

  ASMCMD> exit

cha138/Article/program/Oracle/201311/18992

相关参考

知识大全 Oracle回滚段学习

Oracle回滚段学习  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  本文详细介绍了Oracle

知识大全 回滚段问题

  回滚段管理一直是ORACLE数据库管理的一个难题本文通过实例介绍ORACLE回滚段的概念用法和规划及问题的解决      回滚段概述      回滚段用于存放数据修改之前的值(包括数据修改之前的位

知识大全 Oracle回滚段的概念,用法和规划及问题的解决

Oracle回滚段的概念,用法和规划及问题的解决  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  

知识大全 Oracle8i中回滚段使用和ORA-1555

Oracle8i中回滚段使用和ORA-1555  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  回

知识大全 oracle的事务与锁与回滚段block的一点研究

  SQL> createtableaasselectrownuma fromtwhererownum<;     表已创建     SQL

知识大全 查看哪些session正在使用哪些回滚段

  系统环境操作系统Windows  数据库 OracleiR()forNT企业版  安装路径C:\\ORACLE    测试方法打开多个SQL*Plus窗口一些做一些需要回滚的操作如insertde

知识大全 Oracle回滚表空间丢失或损坏处理方法(1)

Oracle回滚表空间丢失或损坏处理方法(1)  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  问

知识大全 Oracle回滚表空间丢失或损坏处理方法(2)

Oracle回滚表空间丢失或损坏处理方法(2)  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  I

知识大全 充分利用自动撤销管理的优点

  在Oraclei中Oracle对回滚段进行了重新命名现在将其作为撤销日志在传统的操作上回滚段保存交换的撤销信息直到系统发送一个响应或者回滚语句    人工撤销管理在Oraclei仍然被使用但绝大多

知识大全 存储参数storage子句含义及设置技巧

  系统环境  操作系统Windows  数据库 OracleiR()forNT企业版  安装路径C:\\ORACLE    解释        可用于表空间回滚段表索引分区快照快照日志    参数名