知识大全 ShrinkUndo表空间,释放过度占用的空间

Posted 空间

篇首语:绳锯木断,水滴石穿。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 ShrinkUndo表空间,释放过度占用的空间相关的知识,希望对你有一定的参考价值。

ShrinkUndo表空间,释放过度占用的空间  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

  环境:OS:Red Hat Enterprise Linux AS release (Nahant)DB:Oracle Database g Enterprise Edition Release Production 一台Oracle gR 数据库报出如下错误:

  ORA : unable to extend table SYSMAN MGMT_SYSTEM_ERROR_LOG by in tablespace SYSAUX ORA : unable to extend table SYSMAN MGMT_SYSTEM_ERROR_LOG by in tablespace SYSAUX ORA : unable to extend table SYSMAN MGMT_SYSTEM_ERROR_LOG by in tablespace SYSAUX ORA : unable to extend table SYSMAN MGMT_SYSTEM_ERROR_LOG by in tablespace SYSAUX ORA : unable to extend table SYSMAN MGMT_SYSTEM_ERROR_LOG by in tablespace SYSAUX

登陆检查 发现是SYSAUX表空间空间用尽 不能扩展 尝试手工扩展SYSAUX表空间:

  alter database datafile +ORADG/danaly/datafile/sysaux resize m Tue Nov : : ORA signalled during: alter database datafile +ORADG/danaly/datafile/sysaux resize m

出现ORA 错误 提示空间不足 这时候我才认识到是磁盘空间可能被用完了 是谁 偷偷的 用了那么多空间呢(本来有几十个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来察看空间占用情况 空间已经释放 cha138/Article/program/Oracle/201311/18167

相关参考

知识大全 如何查看各个表空间占用磁盘情况

  软件环境WindowsNT+ORACLE  ORACLE安装路径为C:\\ORANT    SQL语句  SQL>coltablespaceformata  SQL>select  b

知识大全 oracle数据库UNDO表空间释放

oracle数据库UNDO表空间释放  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  今天早上在检

知识大全 oracle段管理分析

  ()段区段块  Oracle中的段segment是占用磁盘存储空间的一个对象从逻辑上讲一个数据库由若干表空间(TABLESAPCE)组成每个表空间有若干个表(TABLE)每个表又可以分为若干数据段

知识大全 数据结构考研分类复习真题 第二章 答案[56]

  .[题目分析]题目要求按递增次序输出单链表中各结点的数据元素并释放结点所占存储空间应对链表进行遍历在每趟遍历中查找出整个链表的最小值元素输出并释放结点所占空间;再查次最小值元素输出并释放空间如此下

知识大全 数据结构之单链表基本运算的实现[2]

  销毁单链表  单链表被构造使用完后由于其结点均为动态分配的内存空间所以必须要销毁以释放空间否则会造成申请的内存不能释放单链表的销毁操作是创建操作的逆运算由于要修改单链表的头指针的指针变量所以要将头

知识大全 为何我的导出文件只有500K,导入时却占用了700M的空间

为何我的导出文件只有500K,导入时却占用了700M的空间?  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看

知识大全 oracle压缩表/表空间

  从OracleiR开始ORACLE提供了表/表空间压缩技术以减少磁盘开销节省空间并在某些情况下提高查询性能  表压缩是如何工作的在Orclei第版中表压缩特性通过删除在数据库表中发现的重复数据值来

知识大全 Oracle表、索引修改表空间语句

Oracle表、索引修改表空间语句  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  表做空间迁移时

知识大全 oracle扩展表空间

  扩展可以调整表空间对应的数据文件的大小或者为这个表空间添加数据文件  改变数据文件  SQL>alterdatabasedatafile/home/oracle/oradata/gldb/u

知识大全 oracle将数据导入指定表空间

在使用oracle的exp和imp导出导入的时候有时遇到需要导入的数据不是同一个用户的也不一定是同一个表空间例如源数据库上用户为aaa表空间aa目标数据库用户为bbb表空间bb当用imp导入以后查看发